@@ -87,9 +87,10 @@ namespace Crash
8787 SetEvent (mSignalAppEvent );
8888 }
8989
90- bool CrashMonitor::waitApp () const
90+ bool CrashMonitor::waitApp (bool thawMode ) const
9191 {
92- return WaitForSingleObject (mSignalMonitorEvent , CrashCatcherTimeout) == WAIT_OBJECT_0;
92+ return WaitForSingleObject (mSignalMonitorEvent , thawMode ? CrashCatcherThawTimeout : CrashCatcherTimeout)
93+ == WAIT_OBJECT_0;
9394 }
9495
9596 bool CrashMonitor::isAppAlive () const
@@ -185,7 +186,7 @@ namespace Crash
185186 frozen = false ;
186187 }
187188
188- if (!mFreezeAbort && waitApp ())
189+ if (!mFreezeAbort && waitApp (frozen ))
189190 {
190191 shmLock ();
191192
@@ -215,7 +216,7 @@ namespace Crash
215216 {
216217 handleCrash (true );
217218 TerminateProcess (mAppProcessHandle , 0xDEAD );
218- std::string message = " OpenMW appears to have frozen.\n Crash log saved to '"
219+ std::string message = " OpenMW has frozen.\n Crash dump saved to '"
219220 + Misc::StringUtils::u8StringToString (getFreezeDumpPath (*mShm ).u8string ())
220221 + " '.\n Please report this to https://gitlab.com/OpenMW/openmw/issues !" ;
221222 SDL_ShowSimpleMessageBox (0 , " Fatal Error" , message.c_str (), nullptr );
@@ -289,10 +290,10 @@ namespace Crash
289290 {
290291 std::thread messageBoxThread ([&]() {
291292 SDL_MessageBoxButtonData button = { SDL_MESSAGEBOX_BUTTON_RETURNKEY_DEFAULT, 0 , " Abort" };
292- SDL_MessageBoxData messageBoxData = { SDL_MESSAGEBOX_ERROR, nullptr , " OpenMW appears to have frozen" ,
293- " OpenMW appears to have frozen . Press Abort to terminate it and generate a crash dump. \n If OpenMW "
294- " hasn't actually frozen, this message box will disappear a within a few seconds of it becoming "
295- " responsive." ,
293+ SDL_MessageBoxData messageBoxData = { SDL_MESSAGEBOX_ERROR, nullptr , " OpenMW has frozen" ,
294+ " OpenMW has frozen. This should never happen . Press Abort to terminate it and generate a crash dump to "
295+ " help diagnose the problem. \n OpenMW may unfreeze if you wait, and this message box will disappear "
296+ " after it becomes responsive." ,
296297 1 , &button, nullptr };
297298
298299 int buttonId;
0 commit comments