about summary refs log tree commit diff stats
path: root/src/libtools
diff options
context:
space:
mode:
Diffstat (limited to 'src/libtools')
-rwxr-xr-xsrc/libtools/signals.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libtools/signals.c b/src/libtools/signals.c
index 744a9a6e..4f07b335 100755
--- a/src/libtools/signals.c
+++ b/src/libtools/signals.c
@@ -426,8 +426,9 @@ uintptr_t getX64Address(dynablock_t* db, uintptr_t arm_addr)
         do {
             x64sz+=db->instsize[i].x64;
             armsz+=db->instsize[i].nat*4;
+            ++i;
         }
-        while(!db->instsize[++i].x64);
+        while(db->instsize[i-1].x64==15 || db->instsize[i-1].nat==15);
         if(arm_addr>=armaddr && arm_addr<(armaddr+armsz))
             return x64addr;
         armaddr+=armsz;