diff options
| author | 2019-05-26 14:47:05 +0100 | |
|---|---|---|
| committer | 2019-05-26 14:47:05 +0100 | |
| commit | 38dd69a71ede1689ad9bbde7f27f091e55209b90 (patch) | |
| tree | 62584c63e3e349d9c745b3d85f82eb692c91a6dc | |
| parent | Merge pull request #54 from AntonMcClure/revert-53-patch-1 (diff) | |
| signature | ||
Only iterate a module's deps, not all modules, when checking for circular deps
| -rw-r--r-- | src/ModuleManager.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/ModuleManager.py b/src/ModuleManager.py index f1d3188c..62dd6fa6 100644 --- a/src/ModuleManager.py +++ b/src/ModuleManager.py @@ -253,14 +253,14 @@ class ModuleManager(object): deps.remove(name) if not changed: - for name1, dep1 in definition_dependencies.items(): - for name2, dep2 in definition_dependencies.items(): - if name1 in dep2 and name2 in dep1: + for name, deps in definition_dependencies.items(): + for dep_name in deps: + if name in definition_dependencies[dep_name]: self.log.warn("Circular dependencies: %s<->%s", - [name1, name2]) + [name, dep_name]) # snap a circular dependence - dep2.remove(name1) - dep1.remove(name2) + deps.remove(dep_name) + definition_dependencies[dep_name].remove(name) return [definition_names[name] for name in definitions_ordered] |
