diff options
| author | Ajax <commial@gmail.com> | 2015-03-06 11:27:15 +0100 |
|---|---|---|
| committer | Ajax <commial@gmail.com> | 2015-03-06 11:27:15 +0100 |
| commit | 379788f5e9eff86d3ec70fb8ca7dc88f1ebfe9a3 (patch) | |
| tree | 307b7491a447dd12981634ca6b794586e997ce3c | |
| parent | f54b1c0296a07456c9ceb03fe013e6eca97a0e1e (diff) | |
| download | miasm-379788f5e9eff86d3ec70fb8ca7dc88f1ebfe9a3.tar.gz miasm-379788f5e9eff86d3ec70fb8ca7dc88f1ebfe9a3.zip | |
Depgraph: In `filter_used_nodes`, `used_nodes` can be used as a done set
| -rw-r--r-- | miasm2/analysis/depgraph.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/miasm2/analysis/depgraph.py b/miasm2/analysis/depgraph.py index 72d0176b..724d412c 100644 --- a/miasm2/analysis/depgraph.py +++ b/miasm2/analysis/depgraph.py @@ -1,5 +1,6 @@ """Provide dependency graph""" import itertools + import miasm2.expression.expression as m2_expr from miasm2.core.graph import DiGraph from miasm2.core.asmbloc import asm_label @@ -274,6 +275,8 @@ class DependencyDict(object): # Map while todo: node = todo.pop() + if node in used_nodes: + continue used_nodes.add(node) if not node in self._cache: continue |