aboutsummaryrefslogtreecommitdiff
path: root/src/tools.h
diff options
context:
space:
mode:
authorBenoit Germain <bnt.germain@gmail.com>2021-06-26 18:25:53 +0200
committerBenoit Germain <bnt.germain@gmail.com>2021-06-26 18:25:53 +0200
commit909470be9f7ec1dd2d09ae1a371d69c9c652e957 (patch)
treecd16d9976e90c1d8a61d8ee3423d4af1671bafc0 /src/tools.h
parent050e14dd7fa04e2262ae6b1cc984d76c4149b664 (diff)
downloadlanes-909470be9f7ec1dd2d09ae1a371d69c9c652e957.tar.gz
lanes-909470be9f7ec1dd2d09ae1a371d69c9c652e957.tar.bz2
lanes-909470be9f7ec1dd2d09ae1a371d69c9c652e957.zip
fix stack overflow when transfering a clonable userdata referencing itself through a uservalue
Diffstat (limited to 'src/tools.h')
-rw-r--r--src/tools.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/tools.h b/src/tools.h
index 0df88e9..3bf5a02 100644
--- a/src/tools.h
+++ b/src/tools.h
@@ -22,6 +22,19 @@ void luaG_dump( lua_State* L);
22 22
23// ################################################################################################ 23// ################################################################################################
24 24
25void push_registry_subtable_mode( lua_State* L, UniqueKey key_, const char* mode_);
26void push_registry_subtable( lua_State* L, UniqueKey key_);
27
28enum e_vt
29{
30 VT_NORMAL,
31 VT_KEY,
32 VT_METATABLE
33};
34bool_t inter_copy_one( Universe* U, lua_State* L2, uint_t L2_cache_i, lua_State* L, uint_t i, enum e_vt vt, LookupMode mode_, char const* upName_);
35
36// ################################################################################################
37
25int luaG_inter_copy_package( Universe* U, lua_State* L, lua_State* L2, int package_idx_, LookupMode mode_); 38int luaG_inter_copy_package( Universe* U, lua_State* L, lua_State* L2, int package_idx_, LookupMode mode_);
26 39
27int luaG_inter_copy( Universe* U, lua_State* L, lua_State* L2, uint_t n, LookupMode mode_); 40int luaG_inter_copy( Universe* U, lua_State* L, lua_State* L2, uint_t n, LookupMode mode_);