aboutsummaryrefslogtreecommitdiff
path: root/src/ModuleManager.py
diff options
context:
space:
mode:
authorGravatar jesopo2019-05-26 14:47:05 +0100
committerGravatar jesopo2019-05-26 14:47:05 +0100
commit38dd69a71ede1689ad9bbde7f27f091e55209b90 (patch)
tree62584c63e3e349d9c745b3d85f82eb692c91a6dc /src/ModuleManager.py
parentMerge 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
Diffstat (limited to 'src/ModuleManager.py')
-rw-r--r--src/ModuleManager.py12
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]