--- /usr/bin/glsa-check 2012-01-11 14:04:16.000000000 +0100 +++ glsa-check 2012-01-25 15:36:01.084535583 +0100 @@ -240,8 +240,12 @@ if len(myglsa.packages) > 3: fd1.write("... ") else: - for pkg in myglsa.packages.keys(): - mylist = vardb.match(portage.dep_getkey(str(pkg))) + for k in myglsa.packages.keys(): + pkg = myglsa.packages[k] + for path in pkg: + v_installed = reduce(operator.add, [match(v, "vartree") for v in path["vul_atoms"]], []) + u_installed = reduce(operator.add, [match(u, "vartree") for u in path["unaff_atoms"]], []) + mylist = list(set(v_installed).difference(set(u_installed))) if len(mylist) > 0: pkg = color(" ".join(mylist)) fd1.write(" " + pkg + " ")