about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorCamille Mougey <commial@gmail.com>2017-04-05 12:18:52 +0200
committerGitHub <noreply@github.com>2017-04-05 12:18:52 +0200
commit24cbc5db935ff35d3eb4ca266af96c114dab3ddc (patch)
tree88dbc80759a0c83e51623c4968c685257ef88040
parent1743947af1df52311053c81d7b810025c6f15577 (diff)
parent8be32f1974c962ce153480141133c2614158362a (diff)
downloadmiasm-24cbc5db935ff35d3eb4ca266af96c114dab3ddc.tar.gz
miasm-24cbc5db935ff35d3eb4ca266af96c114dab3ddc.zip
Merge pull request #513 from serpilliere/fix_ir_dst
IR: fix set_dst linenb
-rw-r--r--miasm2/ir/ir.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/miasm2/ir/ir.py b/miasm2/ir/ir.py
index e63176a0..f8ac6722 100644
--- a/miasm2/ir/ir.py
+++ b/miasm2/ir/ir.py
@@ -190,14 +190,16 @@ class IRBlock(object):
         if self._dst is not None:
             return self._dst
         final_dst = None
+        final_linenb = None
         for linenb, assignblk in enumerate(self.irs):
             for dst, src in assignblk.iteritems():
                 if isinstance(dst, m2_expr.ExprId) and dst.name == "IRDst":
                     if final_dst is not None:
                         raise ValueError('Multiple destinations!')
                     final_dst = src
+                    final_linenb = linenb
         self._dst = final_dst
-        self._dst_linenb = linenb
+        self._dst_linenb = final_linenb
         return final_dst
 
     def _set_dst(self, value):