summaryrefslogtreecommitdiffstats
path: root/bin/emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-04-05 17:48:49 +0000
committerZac Medico <zmedico@gentoo.org>2008-04-05 17:48:49 +0000
commitf13390d3a1d649a95d26dbf63b3be8d4d3f1c47e (patch)
tree4769aa8b9955e38fa670c7b11ad861912777f020 /bin/emerge
parentd83159b240b909ea2bdc8ec0406cc10b4ca8b5ca (diff)
downloadportage-f13390d3a1d649a95d26dbf63b3be8d4d3f1c47e.tar.gz
portage-f13390d3a1d649a95d26dbf63b3be8d4d3f1c47e.tar.bz2
portage-f13390d3a1d649a95d26dbf63b3be8d4d3f1c47e.zip
Bug #216328 - Fix broken --newuse reinstallation logic. (trunk r9718)
svn path=/main/branches/2.1.2/; revision=9719
Diffstat (limited to 'bin/emerge')
-rwxr-xr-xbin/emerge5
1 files changed, 4 insertions, 1 deletions
diff --git a/bin/emerge b/bin/emerge
index 8aba419a4..1bfe6ec88 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -2219,6 +2219,7 @@ class depgraph:
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.
@@ -2239,7 +2240,7 @@ class depgraph:
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
@@ -2361,6 +2362,8 @@ class depgraph:
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)