From ed46dd08a6a2ae85f7eebc9d15cb5c2c024e0e96 Mon Sep 17 00:00:00 2001
From: spherallic <spherallic@gmail.com>
Date: Sun, 7 May 2023 17:33:12 +0200
Subject: [PATCH] Prevent tmthing crash with P_SpawnParaloop in Lua

---
 src/lua_baselib.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lua_baselib.c b/src/lua_baselib.c
index 6e258c82a..db06d53dd 100644
--- a/src/lua_baselib.c
+++ b/src/lua_baselib.c
@@ -874,6 +874,7 @@ static int lib_pGetClosestAxis(lua_State *L)
 
 static int lib_pSpawnParaloop(lua_State *L)
 {
+	mobj_t *ptmthing = tmthing;
 	fixed_t x = luaL_checkfixed(L, 1);
 	fixed_t y = luaL_checkfixed(L, 2);
 	fixed_t z = luaL_checkfixed(L, 3);
@@ -890,6 +891,7 @@ static int lib_pSpawnParaloop(lua_State *L)
 	if (nstate >= NUMSTATES)
 		return luaL_error(L, "state %d out of range (0 - %d)", nstate, NUMSTATES-1);
 	P_SpawnParaloop(x, y, z, radius, number, type, nstate, rotangle, spawncenter);
+	P_SetTarget(&tmthing, ptmthing);
 	return 0;
 }