diff options
author | SmallJoker <mk939@ymail.com> | 2019-06-26 19:37:14 +0200 |
---|---|---|
committer | SmallJoker <mk939@ymail.com> | 2019-09-14 19:42:30 +0200 |
commit | b0baa698a495cc990ce5d9c22763957f1138aed3 (patch) | |
tree | 3ebc2a62265d9035739fddacfc9e1b66d9ab3f5a | |
parent | 23677be951b4dc2b9cc174ceb92f0e0b8e8eb867 (diff) | |
download | minetest-b0baa698a495cc990ce5d9c22763957f1138aed3.tar.gz minetest-b0baa698a495cc990ce5d9c22763957f1138aed3.tar.bz2 minetest-b0baa698a495cc990ce5d9c22763957f1138aed3.zip |
CSM: Fix itemstack:get_meta() 'metadata' indexing error
-rw-r--r-- | src/script/cpp_api/s_security.cpp | 1 | ||||
-rw-r--r-- | src/script/scripting_client.cpp | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/script/cpp_api/s_security.cpp b/src/script/cpp_api/s_security.cpp index d972be980..b90b3aa2c 100644 --- a/src/script/cpp_api/s_security.cpp +++ b/src/script/cpp_api/s_security.cpp @@ -243,6 +243,7 @@ void ScriptApiSecurity::initializeSecurityClient() "rawset", "select", "setfenv", + // getmetatable can be used to escape the sandbox "setmetatable", "tonumber", "tostring", diff --git a/src/script/scripting_client.cpp b/src/script/scripting_client.cpp index 239c98e57..c3e0ca373 100644 --- a/src/script/scripting_client.cpp +++ b/src/script/scripting_client.cpp @@ -24,6 +24,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "lua_api/l_client.h" #include "lua_api/l_env.h" #include "lua_api/l_item.h" +#include "lua_api/l_itemstackmeta.h" #include "lua_api/l_minimap.h" #include "lua_api/l_modchannels.h" #include "lua_api/l_particles_local.h" @@ -67,6 +68,7 @@ ClientScripting::ClientScripting(Client *client): void ClientScripting::InitializeModApi(lua_State *L, int top) { LuaItemStack::Register(L); + ItemStackMetaRef::Register(L); StorageRef::Register(L); LuaMinimap::Register(L); NodeMetaRef::RegisterClient(L); |