mirror of
https://github.com/minetest/minetest.git
synced 2024-11-30 03:23:45 +01:00
Check argument types inside MetaDataRef Lua API (#7045)
This commit is contained in:
parent
2a4fbbbff8
commit
858c41b842
@ -95,7 +95,7 @@ int MetaDataRef::l_get_int(lua_State *L)
|
||||
MAP_LOCK_REQUIRED;
|
||||
|
||||
MetaDataRef *ref = checkobject(L, 1);
|
||||
std::string name = lua_tostring(L, 2);
|
||||
std::string name = luaL_checkstring(L, 2);
|
||||
|
||||
Metadata *meta = ref->getmeta(false);
|
||||
if (meta == NULL) {
|
||||
@ -114,8 +114,8 @@ int MetaDataRef::l_set_int(lua_State *L)
|
||||
MAP_LOCK_REQUIRED;
|
||||
|
||||
MetaDataRef *ref = checkobject(L, 1);
|
||||
std::string name = lua_tostring(L, 2);
|
||||
int a = lua_tointeger(L, 3);
|
||||
std::string name = luaL_checkstring(L, 2);
|
||||
int a = luaL_checkint(L, 3);
|
||||
std::string str = itos(a);
|
||||
|
||||
Metadata *meta = ref->getmeta(true);
|
||||
@ -133,7 +133,7 @@ int MetaDataRef::l_get_float(lua_State *L)
|
||||
MAP_LOCK_REQUIRED;
|
||||
|
||||
MetaDataRef *ref = checkobject(L, 1);
|
||||
std::string name = lua_tostring(L, 2);
|
||||
std::string name = luaL_checkstring(L, 2);
|
||||
|
||||
Metadata *meta = ref->getmeta(false);
|
||||
if (meta == NULL) {
|
||||
@ -152,8 +152,8 @@ int MetaDataRef::l_set_float(lua_State *L)
|
||||
MAP_LOCK_REQUIRED;
|
||||
|
||||
MetaDataRef *ref = checkobject(L, 1);
|
||||
std::string name = lua_tostring(L, 2);
|
||||
float a = lua_tonumber(L, 3);
|
||||
std::string name = luaL_checkstring(L, 2);
|
||||
float a = luaL_checknumber(L, 3);
|
||||
std::string str = ftos(a);
|
||||
|
||||
Metadata *meta = ref->getmeta(true);
|
||||
|
@ -158,7 +158,7 @@ bool NodeMetaRef::handleFromTable(lua_State *L, int table, Metadata *_meta)
|
||||
lua_pushnil(L);
|
||||
while (lua_next(L, inventorytable) != 0) {
|
||||
// key at index -2 and value at index -1
|
||||
std::string name = lua_tostring(L, -2);
|
||||
std::string name = luaL_checkstring(L, -2);
|
||||
read_inventory_list(L, -1, inv, name.c_str(), getServer(L));
|
||||
lua_pop(L, 1); // Remove value, keep key for next iteration
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user