diff options
Diffstat (limited to 'src/lib/Client/Frame.py')
-rw-r--r-- | src/lib/Client/Frame.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/lib/Client/Frame.py b/src/lib/Client/Frame.py index ac99c28ba..879ab0be2 100644 --- a/src/lib/Client/Frame.py +++ b/src/lib/Client/Frame.py @@ -58,10 +58,6 @@ class Frame: except ImportError: continue - for tool in tools: - for conflict in getattr(tool, 'conflicts', []): - del tmods[conflict] - for (tool, mod) in tmods.iteritems(): try: self.tools.append(getattr(mod, tool)(self.logger, setup, config, self.states)) @@ -70,6 +66,11 @@ class Frame: except: self.logger.error("Failed to instantiate tool %s" % (tool), exc_info=1) + for tool in self.tools[:]: + for conflict in getattr(tool, 'conflicts', []): + [self.tools.remove(item) for item in self.tools \ + if item.__name__ == conflict] + self.logger.info("Loaded tool drivers:") self.logger.info([tool.__name__ for tool in self.tools]) if not self.setup['dryrun']: |