diff --git a/src/sdl/i_system.c b/src/sdl/i_system.c index a86af316e..ca135a96b 100644 --- a/src/sdl/i_system.c +++ b/src/sdl/i_system.c @@ -171,6 +171,7 @@ static char returnWadPath[256]; #include "../d_net.h" #include "../g_game.h" #include "../filesrch.h" +#include "../lua_hook.h" #include "endtxt.h" #include "sdlmain.h" @@ -303,6 +304,9 @@ FUNCNORETURN static ATTRNORETURN void signal_handler(INT32 num) FUNCNORETURN static ATTRNORETURN void quit_handler(int num) { +#ifdef HAVE_BLUA + LUAh_GameQuit(); +#endif signal(num, SIG_DFL); //default signal action raise(num); I_Quit(); diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c index c2f492000..78c5e8170 100644 --- a/src/sdl/i_video.c +++ b/src/sdl/i_video.c @@ -73,6 +73,7 @@ #include "../console.h" #include "../command.h" #include "../r_main.h" +#include "../lua_hook.h" #include "sdlmain.h" #ifdef HWRENDER #include "../hardware/hw_main.h" @@ -1059,6 +1060,9 @@ void I_GetEvent(void) M_SetupJoystickMenu(0); break; case SDL_QUIT: +#ifdef HAVE_BLUA + LUAh_GameQuit(); +#endif I_Quit(); M_QuitResponse('y'); break;