From b24e08ab8c4cc0daaed140297755e91e98c3d4a0 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 5 Apr 2008 17:48:23 +0000 Subject: Bug #216328 - Fix broken --newuse reinstallation logic. svn path=/main/trunk/; revision=9718 --- pym/_emerge/__init__.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'pym') diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index bc8cbd205..613409332 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -2511,6 +2511,7 @@ class depgraph(object): usepkgonly = "--usepkgonly" in self.myopts empty = "empty" in self.myparams selective = "selective" in self.myparams + reinstall = False noreplace = "--noreplace" in self.myopts # Behavior of the "selective" parameter depends on # whether or not a package matches an argument atom. @@ -2531,7 +2532,7 @@ class depgraph(object): if existing_node: break if installed and not find_existing_node: - want_reinstall = empty or \ + want_reinstall = reinstall or empty or \ (found_available_arg and not selective) if want_reinstall and matched_packages: continue @@ -2656,6 +2657,8 @@ class depgraph(object): self._reinstall_for_flags( forced_flags, old_use, old_iuse, cur_use, cur_iuse) + if reinstall_for_flags: + reinstall = True if not installed: must_reinstall = empty or \ (myarg and not selective) -- cgit v1.2.3-1-g7c22