diff options
author | sfan5 <sfan5@live.de> | 2017-09-15 12:19:01 +0200 |
---|---|---|
committer | SmallJoker <mk939@ymail.com> | 2018-06-03 17:31:59 +0200 |
commit | c2a0333901a696f7dcb67356aeb0206b89be14e6 (patch) | |
tree | 11d378e7426f53797e94e6f0d103164ffe1356cf /src/script/lua_api/l_env.cpp | |
parent | 5b2461c713889b9832f5b99c85abf87e5d494242 (diff) | |
download | minetest-c2a0333901a696f7dcb67356aeb0206b89be14e6.tar.gz minetest-c2a0333901a696f7dcb67356aeb0206b89be14e6.tar.bz2 minetest-c2a0333901a696f7dcb67356aeb0206b89be14e6.zip |
ServerEnv: Clean up object lifecycle handling (#6414)
* ServerEnv: Clean up object lifecycle handling
Diffstat (limited to 'src/script/lua_api/l_env.cpp')
-rw-r--r-- | src/script/lua_api/l_env.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/script/lua_api/l_env.cpp b/src/script/lua_api/l_env.cpp index e7284b035..393c4ed5f 100644 --- a/src/script/lua_api/l_env.cpp +++ b/src/script/lua_api/l_env.cpp @@ -537,9 +537,11 @@ int ModApiEnvMod::l_get_objects_inside_radius(lua_State *L) std::vector<u16>::const_iterator iter = ids.begin(); for(u32 i = 0; iter != ids.end(); ++iter) { ServerActiveObject *obj = env->getActiveObject(*iter); - // Insert object reference into table - script->objectrefGetOrCreate(L, obj); - lua_rawseti(L, -2, ++i); + if (!obj->isGone()) { + // Insert object reference into table + script->objectrefGetOrCreate(L, obj); + lua_rawseti(L, -2, ++i); + } } return 1; } |