diff --git a/src/sdl2/i_system.c b/src/sdl2/i_system.c index f198e874..8c08cafa 100644 --- a/src/sdl2/i_system.c +++ b/src/sdl2/i_system.c @@ -2284,8 +2284,12 @@ void I_Quit(void) G_SaveGameData(); // Tails 12-08-2002 //added:16-02-98: when recording a demo, should exit using 'q' key, // but sometimes we forget and use 'F10'.. so save here too. - if (demorecording || metalrecording) + + if (demorecording) G_CheckDemoStatus(); + if (metalrecording) + G_StopMetalRecording(); + D_QuitNetGame(); I_ShutdownMusic(); I_ShutdownSound(); @@ -2437,8 +2441,10 @@ void I_Error(const char *error, ...) G_SaveGameData(); // Tails 12-08-2002 // Shutdown. Here might be other errors. - if (demorecording || metalrecording) + if (demorecording) G_CheckDemoStatus(); + if (metalrecording) + G_StopMetalRecording(); D_QuitNetGame(); I_ShutdownMusic(); diff --git a/src/sdl2/i_video.c b/src/sdl2/i_video.c index 77a5d149..40cee97c 100644 --- a/src/sdl2/i_video.c +++ b/src/sdl2/i_video.c @@ -1518,6 +1518,7 @@ INT32 VID_GetModeForSize(INT32 w, INT32 h) return -1; #if 0 INT32 matchMode = -1, i; + VID_PrepareModeList(); if (USE_FULLSCREEN && numVidModes != -1) { for (i=firstEntry; i