about summary refs log tree commit diff stats
path: root/src/libtools
diff options
context:
space:
mode:
Diffstat (limited to 'src/libtools')
-rw-r--r--src/libtools/signal32.c2
-rw-r--r--src/libtools/signals.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/libtools/signal32.c b/src/libtools/signal32.c
index 99e09434..d088a9e6 100644
--- a/src/libtools/signal32.c
+++ b/src/libtools/signal32.c
@@ -699,7 +699,7 @@ void my_sigactionhandler_oldcode_32(x64emu_t* emu, int32_t sig, int simple, sigi
     int dynarec = 0;
     #ifdef DYNAREC
     if(sig!=X64_SIGSEGV && !(Locks&is_dyndump_locked) && !(Locks&is_memprot_locked))
-        dynarec = 1;
+        dynarec = BOX64ENV(dynarec_interp_signal)?0:1;
     #endif
     ret = RunFunctionHandler32(&exits, dynarec, sigcontext, my_context->signals[info2->si_signo], 3, info2->si_signo, info2, sigcontext);
     // restore old value from emu
diff --git a/src/libtools/signals.c b/src/libtools/signals.c
index 4bb29eaa..a05b6491 100644
--- a/src/libtools/signals.c
+++ b/src/libtools/signals.c
@@ -1147,7 +1147,7 @@ void my_sigactionhandler_oldcode_64(x64emu_t* emu, int32_t sig, int simple, sigi
     int dynarec = 0;
     #ifdef DYNAREC
     if(!(sig==X64_SIGSEGV || (Locks&is_dyndump_locked) || (Locks&is_memprot_locked)))
-        dynarec = 1;
+        dynarec = BOX64ENV(dynarec_interp_signal)?0:1;
     #endif
     ret = RunFunctionHandler(emu, &exits, dynarec, sigcontext, my_context->signals[info2->si_signo], 3, info2->si_signo, info2, sigcontext);
     // restore old value from emu