From 04826d261528487a05a31bf06d60e6c415fd193b Mon Sep 17 00:00:00 2001
From: Louis-Antoine <lamr@free.fr>
Date: Fri, 13 Nov 2020 15:31:11 +0100
Subject: [PATCH] Replace lua_pop(-1) with lua_settop(0)

---
 src/lua_hudlib.c | 20 ++++++++++----------
 src/lua_script.c |  4 ++--
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/src/lua_hudlib.c b/src/lua_hudlib.c
index 6b87dc9303..5db5169d51 100644
--- a/src/lua_hudlib.c
+++ b/src/lua_hudlib.c
@@ -1343,7 +1343,7 @@ void LUAh_GameHUD(player_t *stplayr)
 		return;
 
 	hud_running = true;
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 
 	lua_getfield(gL, LUA_REGISTRYINDEX, "HUD");
 	I_Assert(lua_istable(gL, -1));
@@ -1367,7 +1367,7 @@ void LUAh_GameHUD(player_t *stplayr)
 		lua_pushvalue(gL, -5); // camera
 		LUA_Call(gL, 3);
 	}
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 	hud_running = false;
 }
 
@@ -1377,7 +1377,7 @@ void LUAh_ScoresHUD(void)
 		return;
 
 	hud_running = true;
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 
 	lua_getfield(gL, LUA_REGISTRYINDEX, "HUD");
 	I_Assert(lua_istable(gL, -1));
@@ -1392,7 +1392,7 @@ void LUAh_ScoresHUD(void)
 		lua_pushvalue(gL, -3); // graphics library (HUD[1])
 		LUA_Call(gL, 1);
 	}
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 	hud_running = false;
 }
 
@@ -1402,7 +1402,7 @@ void LUAh_TitleHUD(void)
 		return;
 
 	hud_running = true;
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 
 	lua_getfield(gL, LUA_REGISTRYINDEX, "HUD");
 	I_Assert(lua_istable(gL, -1));
@@ -1417,7 +1417,7 @@ void LUAh_TitleHUD(void)
 		lua_pushvalue(gL, -3); // graphics library (HUD[1])
 		LUA_Call(gL, 1);
 	}
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 	hud_running = false;
 }
 
@@ -1427,7 +1427,7 @@ void LUAh_TitleCardHUD(player_t *stplayr)
 		return;
 
 	hud_running = true;
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 
 	lua_getfield(gL, LUA_REGISTRYINDEX, "HUD");
 	I_Assert(lua_istable(gL, -1));
@@ -1451,7 +1451,7 @@ void LUAh_TitleCardHUD(player_t *stplayr)
 		LUA_Call(gL, 4);
 	}
 
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 	hud_running = false;
 }
 
@@ -1461,7 +1461,7 @@ void LUAh_IntermissionHUD(void)
 		return;
 
 	hud_running = true;
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 
 	lua_getfield(gL, LUA_REGISTRYINDEX, "HUD");
 	I_Assert(lua_istable(gL, -1));
@@ -1476,6 +1476,6 @@ void LUAh_IntermissionHUD(void)
 		lua_pushvalue(gL, -3); // graphics library (HUD[1])
 		LUA_Call(gL, 1);
 	}
-	lua_pop(gL, -1);
+	lua_settop(gL, 0);
 	hud_running = false;
 }
diff --git a/src/lua_script.c b/src/lua_script.c
index bb022f9ce1..59e2fe7bed 100644
--- a/src/lua_script.c
+++ b/src/lua_script.c
@@ -437,7 +437,7 @@ static void LUA_ClearState(void)
 
 	// open base libraries
 	luaL_openlibs(L);
-	lua_pop(L, -1);
+	lua_settop(L, 0);
 
 	// make LREG_VALID table for all pushed userdata cache.
 	lua_newtable(L);
@@ -640,7 +640,7 @@ fixed_t LUA_EvalMath(const char *word)
 	*b = '\0';
 
 	// eval string.
-	lua_pop(L, -1);
+	lua_settop(L, 0);
 	if (luaL_dostring(L, buf))
 	{
 		p = lua_tostring(L, -1);
-- 
GitLab