From f8d81ce6a95f5c5e13e0c87945174cb59897c66b Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 7 Apr 2004 07:40:02 +0000 Subject: [PATCH] fix hangs after crash --- stepmania/src/archutils/Unix/CrashHandler.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/stepmania/src/archutils/Unix/CrashHandler.cpp b/stepmania/src/archutils/Unix/CrashHandler.cpp index d7fd7c531a..46fa9f628d 100644 --- a/stepmania/src/archutils/Unix/CrashHandler.cpp +++ b/stepmania/src/archutils/Unix/CrashHandler.cpp @@ -366,6 +366,10 @@ static void RunCrashHandler( const CrashData *crash ) int status = 0; waitpid( childpid, &status, 0 ); + + /* We need to resume threads before continuing, or we may deadlock on _exit(). */ + RageThread::ResumeAllThreads(); + if( WIFSIGNALED(status) ) safe_print( fileno(stderr), "Crash handler child exited with signal ", itoa(WTERMSIG(status)), "\n", NULL); }