]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - sys_shared.c
PRVM: fix null ptr deref in VM_getkeybind()
[xonotic/darkplaces.git] / sys_shared.c
index 4c714cc07c853a9afbe4d04711cbcceefdd61dcc..745a839eb6ae0f1bfe9594a6f4695e5e9354d308 100644 (file)
@@ -1011,7 +1011,11 @@ static void Sys_HandleCrash(int sig)
        Sys_SDL_Dialog("Engine Crash", dialogtext);
 
        fflush(stderr); // not async-signal-safe :(
-       _Exit(sig);
+
+       // Continue execution with default signal handling.
+       // A real crash will be re-triggered so the platform can handle it,
+       // a fake crash (kill -SEGV) will cause a graceful shutdown.
+       signal(sig, SIG_DFL);
 }
 
 static void Sys_HandleSignal(int sig)