From 2c94aaf40f387016738b91c94992adb840ab08ba Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 6 Oct 2006 12:48:14 +0000 Subject: Reject installed packages if they have a matching masked ebuild in the tree. svn path=/main/trunk/; revision=4606 --- bin/emerge | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'bin') diff --git a/bin/emerge b/bin/emerge index b2322829a..78e73551f 100755 --- a/bin/emerge +++ b/bin/emerge @@ -1161,7 +1161,15 @@ class depgraph: """Fall back to the installed package database. This is a last resort because the metadata tends to diverge from that of the ebuild in the tree.""" - myeb_inst = portage.best(vardb.match(x)) + myeb_inst_matches = vardb.match(x) + if "--usepkgonly" not in self.myopts: + """ TODO: Improve masking check for installed and + binary packages. bug #149816""" + myeb_inst_matches = [pkg for pkg in myeb_inst_matches \ + if not portdb.cpv_exists(pkg)] + myeb_inst = None + if myeb_inst_matches: + myeb_inst = portage.best(myeb_inst_matches) if myeb_inst: binpkguseflags = vardb.aux_get( myeb_inst, ["USE"])[0].split() -- cgit v1.2.3-1-g7c22