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/signals.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libtools/signals.c b/src/libtools/signals.c
index e47a3dac..b20c04f3 100644
--- a/src/libtools/signals.c
+++ b/src/libtools/signals.c
@@ -290,6 +290,11 @@ uint64_t RunFunctionHandler(int* exit, int dynarec, x64_ucontext_t* sigcontext,
     trace_start = 0; trace_end = 1; // disabling trace, globably for now...
 #endif
 #endif
+#ifndef USE_CUSTOM_MEM
+    // because a signal can interupt a malloc-like function
+    // Dynarec cannot be used in signal handling unless custom malloc is used
+    dynarec = 0;
+#endif
 
     x64emu_t *emu = thread_get_emu();
     #ifdef DYNAREC