From f5187016939c45c041c7d857bd6380e601410e96 Mon Sep 17 00:00:00 2001 From: René 'Necoro' Neumann Date: Wed, 16 Apr 2008 22:44:56 +0200 Subject: Do not update packages, if the package to update to is masked and the current installed package matches the criterion already. --- portato/backend/portage/system.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'portato/backend/portage/system.py') diff --git a/portato/backend/portage/system.py b/portato/backend/portage/system.py index ae17d75..ef3feb9 100644 --- a/portato/backend/portage/system.py +++ b/portato/backend/portage/system.py @@ -443,8 +443,17 @@ class PortageSystem (SystemInterface): if not bm: warning(_("Bug? No best match could be found for '%(package)s'. Needed by: '%(cpv)s'."), {"package" : i, "cpv": p.get_cpv()}) else: - for pkg in bm: + for pkg in bm: if not pkg: continue + if pkg.is_masked() or pkg.is_testing(True): # check to not update unnecessairily + cont = False + for inst in self.find_installed_packages(pkg.get_cp(), only_cpv = True): + if self.cpv_matches(inst, i): + debug("The installed %s matches %s. Discarding upgrade to masked version.", inst, i) + cont = True + break + if cont: continue + check(pkg, state[1], appended) # XXX: should be 'or'ed with prev_appended? for p in self.get_new_packages(packages): -- cgit v1.2.3-54-g00ecf