From 673edfd36e1d02a629838d3a408155779af50912 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= Date: Tue, 13 Apr 2010 03:10:02 +0200 Subject: Fix the handling of FilterSets. Fixes bug #558887. Now FilterSets are a subclass of InstalledSet. And return only these packages, which are installed ... but then all of them. --- portato/backend/portage/system.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'portato/backend/portage/system.py') diff --git a/portato/backend/portage/system.py b/portato/backend/portage/system.py index 3aaa060..990a39a 100644 --- a/portato/backend/portage/system.py +++ b/portato/backend/portage/system.py @@ -209,10 +209,11 @@ class PortageSystem (SystemInterface): t = self.find_packages(search_key, pkgSet = pkgSet, masked = masked, with_version = True, only_cpv = True) - if VERSION >= (2,1,5): - t += [pkg.get_cpv() for pkg in self.find_packages(search_key, self.SET_INSTALLED) if not (pkg.is_testing(True) or pkg.is_masked())] - elif not only_installed: # no need to run twice - t += self.find_packages(search_key, self.SET_INSTALLED, only_cpv=True) + if not only_installed: + if VERSION >= (2,1,5): + t += [pkg.get_cpv() for pkg in self.find_packages(search_key, self.SET_INSTALLED) if not (pkg.is_testing(True) or pkg.is_masked())] + else: # no need to run twice + t += self.find_packages(search_key, self.SET_INSTALLED, only_cpv=True) if t: t = list(set(t)) -- cgit v1.2.3