diff options
| -rw-r--r-- | pkg_resources/__init__.py | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/pkg_resources/__init__.py b/pkg_resources/__init__.py index 4f42156d..86ec3411 100644 --- a/pkg_resources/__init__.py +++ b/pkg_resources/__init__.py @@ -645,13 +645,12 @@ class WorkingSet: distributions in the working set, otherwise only ones matching both `group` and `name` are yielded (in distribution order). """ - for dist in self: - entries = dist.get_entry_map(group) - if name is None: - for ep in entries.values(): - yield ep - elif name in entries: - yield entries[name] + return ( + entry + for dist in self + for entry in dist.get_entry_map(group).values() + if name is None or name == entry.name + ) def run_script(self, requires, script_name): """Locate distribution for `requires` and run `script_name` script""" |
