about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorserpilliere <serpilliere@users.noreply.github.com>2018-12-09 12:54:59 +0100
committerGitHub <noreply@github.com>2018-12-09 12:54:59 +0100
commita2e6d20b83e66a1b049abec33317ff2e97d3943a (patch)
tree5857034fe14e7a01ef26168e81e5393ba2173977
parent94865dd32eb53ef88d24cb23d6f711c90f5a0d40 (diff)
parent83b22a7a2c73773deb74c83dc2feda3f984160ad (diff)
downloadmiasm-a2e6d20b83e66a1b049abec33317ff2e97d3943a.tar.gz
miasm-a2e6d20b83e66a1b049abec33317ff2e97d3943a.zip
Merge pull request #896 from Mizari/master
perfomance feature
-rw-r--r--miasm2/expression/expression.py11
1 files changed, 3 insertions, 8 deletions
diff --git a/miasm2/expression/expression.py b/miasm2/expression/expression.py
index d06b7e21..0e4b7629 100644
--- a/miasm2/expression/expression.py
+++ b/miasm2/expression/expression.py
@@ -317,15 +317,10 @@ class Expr(object):
         """Find and replace sub expression using dct
         @dct: dictionary of Expr -> *
         """
-        if dct is None:
-            dct = {}
-
-        def my_replace(expr, dct):
-            if expr in dct:
-                return dct[expr]
-            return expr
+        if not dct:
+            return self
 
-        return self.visit(lambda expr: my_replace(expr, dct))
+        return self.visit(lambda expr: dct.get(expr, expr))
 
     def canonize(self):
         "Canonize the Expression"