diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-11-29 20:48:15 -0800 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-11-29 20:48:15 -0800 |
commit | 2b683ea3f59795ef242361877a3c7e371993d268 (patch) | |
tree | d694580623f2a1011f026b8577fb830b4f103722 | |
parent | 1a81d7d5ae0f8350348e3f8e43d0251d5e6156df (diff) | |
download | portage-2b683ea3f59795ef242361877a3c7e371993d268.tar.gz portage-2b683ea3f59795ef242361877a3c7e371993d268.tar.bz2 portage-2b683ea3f59795ef242361877a3c7e371993d268.zip |
fix missing_enabled/disabled logic for bug 345979
-rw-r--r-- | pym/_emerge/depgraph.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index b369a3a83..4ccbaab18 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -2994,6 +2994,9 @@ class depgraph(object): missing_disabled = atom.use.missing_disabled.difference(pkg.iuse.all) if atom.use.enabled: + if atom.use.enabled.intersection(missing_disabled): + use_match = False + can_adjust_use = False need_enabled = atom.use.enabled.difference(use) if need_enabled: need_enabled = need_enabled.difference(missing_enabled) @@ -3002,11 +3005,11 @@ class depgraph(object): if can_adjust_use: if pkg.use.mask.intersection(need_enabled): can_adjust_use = False - if can_adjust_use: - if missing_disabled.intersection(need_enabled): - can_adjust_use = False if atom.use.disabled: + if atom.use.disabled.intersection(missing_enabled): + use_match = False + can_adjust_use = False need_disabled = atom.use.disabled.intersection(use) if need_disabled: need_disabled = need_disabled.difference(missing_disabled) @@ -3016,9 +3019,6 @@ class depgraph(object): if pkg.use.force.difference( pkg.use.mask).intersection(need_disabled): can_adjust_use = False - if can_adjust_use: - if missing_enabled.intersection(need_disabled): - can_adjust_use = False if not use_match: if can_adjust_use: |