From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 090D71381F3 for ; Wed, 19 Jun 2013 20:05:52 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D6111E087F; Wed, 19 Jun 2013 20:05:49 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7504EE087F for ; Wed, 19 Jun 2013 20:05:49 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 644E233BF45 for ; Wed, 19 Jun 2013 20:05:48 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id 0B3F9E468F for ; Wed, 19 Jun 2013 20:05:47 +0000 (UTC) From: "Zac Medico" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Zac Medico" Message-ID: <1371672328.ca2e34f3b9615c4f1e1d6d258fa5dab6f6c3d6dd.zmedico@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: pym/_emerge/ X-VCS-Repository: proj/portage X-VCS-Files: pym/_emerge/depgraph.py X-VCS-Directories: pym/_emerge/ X-VCS-Committer: zmedico X-VCS-Committer-Name: Zac Medico X-VCS-Revision: ca2e34f3b9615c4f1e1d6d258fa5dab6f6c3d6dd X-VCS-Branch: master Date: Wed, 19 Jun 2013 20:05:47 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: e27ffaf5-723a-4ec7-bf6c-9e921d9db4d7 X-Archives-Hash: 56b5529a102f2e81bffea3304e26a561 commit: ca2e34f3b9615c4f1e1d6d258fa5dab6f6c3d6dd Author: Zac Medico gentoo org> AuthorDate: Wed Jun 19 20:05:28 2013 +0000 Commit: Zac Medico gentoo org> CommitDate: Wed Jun 19 20:05:28 2013 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=ca2e34f3 depgraph: fix --exclude/--newuse interaction This fixes a case where an installed package could possibly be rejected due to --newuse, even though it was selected by --exclude. The problem may have been triggered randomly by differences in graph traversal order, which may have been affected by hash randomization (enabled by default since Python 3.3). --- pym/_emerge/depgraph.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index cb7d3d6..3c52159 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -4915,7 +4915,12 @@ class depgraph(object): break # Compare built package to current config and # reject the built package if necessary. - if built and not useoldpkg and (not installed or matched_pkgs_ignore_use) and \ + if built and not useoldpkg and \ + (not installed or + any(other_pkg != pkg for other_pkg in matched_pkgs_ignore_use)) and \ + not (installed and + self._frozen_config.excluded_pkgs.findAtomForPackage(pkg, + modified_use=self._pkg_use_enabled(pkg))) and \ ("--newuse" in self._frozen_config.myopts or \ "--reinstall" in self._frozen_config.myopts or \ (not installed and self._dynamic_config.myparams.get(