Merge pull request #645 from pbtoast/prefs-circ-deps-485

Simple fix for crash related to circular dependencies in local pref path.
This commit is contained in:
Timothee "TTimo" Besset 2019-11-02 16:20:46 -05:00 committed by GitHub
commit 1f6d29eac8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 16 additions and 7 deletions

View File

@ -111,15 +111,24 @@ void Error( const char *error, ... ){
}
}
strcat( text, _( "An unrecoverable error has occured.\n"
"Would you like to edit Preferences before exiting Radiant?" ) );
// If a game has been selected in the global preferences, we can let
// the player edit that game's preferences to try to get it to work.
if (g_PrefsDlg.m_bSetGame) {
strcat( text, _( "An unrecoverable error has occured.\n"
"Would you like to edit Preferences before exiting Radiant?" ) );
Sys_Printf( text );
Sys_Printf( text );
if ( gtk_MessageBox( NULL, text, _( "Error" ), MB_YESNO ) == IDYES ) {
Sys_Printf( "Doing prefs..\n" );
g_PrefsDlg.LoadPrefs();
g_PrefsDlg.DoModal();
if ( gtk_MessageBox( NULL, text, _( "Error" ), MB_YESNO ) == IDYES ) {
Sys_Printf( "Doing prefs..\n" );
g_PrefsDlg.LoadPrefs();
g_PrefsDlg.DoModal();
}
}
else {
strcat( text, _( "An unrecoverable error has occured." ) );
Sys_Printf( text );
gtk_MessageBox( NULL, text, _( "Error" ), MB_ICONEXCLAMATION );
}
QGL_Shutdown();