diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-07-19 21:44:14 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-07-19 21:44:14 -0700 |
commit | 31f7e4afee0255d93fbb7eb6c90ba719943cb883 (patch) | |
tree | 4cf7a85c57a04f66e2f0fb40cc7ce75becfe82b7 | |
parent | 252e2e1dd5b4ffe70bb1700c3f94da05fc30d2e3 (diff) | |
download | portage-31f7e4afee0255d93fbb7eb6c90ba719943cb883.tar.gz portage-31f7e4afee0255d93fbb7eb6c90ba719943cb883.tar.bz2 portage-31f7e4afee0255d93fbb7eb6c90ba719943cb883.zip |
Fix unused case in LinkageMapELF.findConsumers().
Currently, we never pass in more that one package via the
exclude_providers argument, so we never trigger the flaw in the logic
that this fixes.
-rw-r--r-- | pym/portage/util/_dyn_libs/LinkageMapELF.py | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/pym/portage/util/_dyn_libs/LinkageMapELF.py b/pym/portage/util/_dyn_libs/LinkageMapELF.py index c8e9acfe3..05043d708 100644 --- a/pym/portage/util/_dyn_libs/LinkageMapELF.py +++ b/pym/portage/util/_dyn_libs/LinkageMapELF.py @@ -697,14 +697,18 @@ class LinkageMapELF(object): for provider_key in soname_node.providers: provider_objs = self._obj_properties[provider_key][4] for p in provider_objs: - for excluded in exclude_providers: - if not excluded(p): - # This provider is not excluded. It will - # satisfy a consumer of this soname if it - # is in the default ld.so path or the - # consumer's runpath. - relevant_dir_keys.add( - self._path_key(os.path.dirname(p))) + provider_excluded = False + for excluded_provider_isowner in exclude_providers: + if excluded_provider_isowner(p): + provider_excluded = True + break + if not provider_excluded: + # This provider is not excluded. It will + # satisfy a consumer of this soname if it + # is in the default ld.so path or the + # consumer's runpath. + relevant_dir_keys.add( + self._path_key(os.path.dirname(p))) for consumer_key in soname_node.consumers: _arch, _needed, path, _soname, _consumer_objs = \ |