about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-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"