summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/_emerge/BlockerDB.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/pym/_emerge/BlockerDB.py b/pym/_emerge/BlockerDB.py
index 0021f2339..dc0f9134e 100644
--- a/pym/_emerge/BlockerDB.py
+++ b/pym/_emerge/BlockerDB.py
@@ -114,8 +114,10 @@ class BlockerDB(object):
return blocking_pkgs
def discardBlocker(self, pkg):
- """Discard a package from the list of potential blockers."""
- self._fake_vartree.cpv_discard(pkg)
+ """Discard a package from the list of potential blockers.
+ This will match any package(s) with identical cpv or cp:slot."""
+ for cpv_match in self._fake_vartree.dbapi.match_pkgs("=%s" % (pkg.cpv,)):
+ self._fake_vartree.cpv_discard(cpv_match)
for slot_match in self._fake_vartree.dbapi.match_pkgs(pkg.slot_atom):
if slot_match.cp == pkg.cp:
self._fake_vartree.cpv_discard(pkg)