Clear clipping rectangle before each hook call

Prevents Lua from being able to make a mess.
This commit is contained in:
Sally Coolatta 2022-12-11 14:14:12 -05:00
parent 3a8b1ea8e6
commit b50fbce5ee
2 changed files with 10 additions and 0 deletions

View file

@ -373,6 +373,9 @@ static void D_Display(void)
if (dedicated) //bail out after wipe logic
return;
// Catch runaway clipping rectangles.
V_ClearClipRect();
// do buffered drawing
switch (gamestate)
{

View file

@ -27,6 +27,8 @@
#include "d_netcmd.h" // for cv_perfstats
#include "i_system.h" // I_GetPreciseTime
#include "v_video.h" // V_ClearClipRect
/* =========================================================================
ABSTRACTION
========================================================================= */
@ -641,8 +643,13 @@ void LUA_HookHUD(huddrawlist_h list, int hook_type)
LUA_SetHudHook(hook_type, list);
hud_running = true; // local hook
// Catch runaway clipping rectangles.
V_ClearClipRect();
init_hook_call(&hook, 0, res_none);
call_mapped(&hook, map);
hud_running = false;
}
}