mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-11-04 09:15:29 +01:00 
			
		
		
		
	Lua->C getintfield() use lua_tointeger (#4408)
previously function used tonumber which returned float this caused errors in large numbers and resulted in obj-def-handlers being invalid when retrived from lua tables in c
This commit is contained in:
		@@ -391,7 +391,7 @@ bool getintfield(lua_State *L, int table,
 | 
			
		||||
	lua_getfield(L, table, fieldname);
 | 
			
		||||
	bool got = false;
 | 
			
		||||
	if(lua_isnumber(L, -1)){
 | 
			
		||||
		result = lua_tonumber(L, -1);
 | 
			
		||||
		result = lua_tointeger(L, -1);
 | 
			
		||||
		got = true;
 | 
			
		||||
	}
 | 
			
		||||
	lua_pop(L, 1);
 | 
			
		||||
@@ -404,7 +404,7 @@ bool getintfield(lua_State *L, int table,
 | 
			
		||||
	lua_getfield(L, table, fieldname);
 | 
			
		||||
	bool got = false;
 | 
			
		||||
	if(lua_isnumber(L, -1)){
 | 
			
		||||
		result = lua_tonumber(L, -1);
 | 
			
		||||
		result = lua_tointeger(L, -1);
 | 
			
		||||
		got = true;
 | 
			
		||||
	}
 | 
			
		||||
	lua_pop(L, 1);
 | 
			
		||||
@@ -417,7 +417,7 @@ bool getintfield(lua_State *L, int table,
 | 
			
		||||
	lua_getfield(L, table, fieldname);
 | 
			
		||||
	bool got = false;
 | 
			
		||||
	if(lua_isnumber(L, -1)){
 | 
			
		||||
		result = lua_tonumber(L, -1);
 | 
			
		||||
		result = lua_tointeger(L, -1);
 | 
			
		||||
		got = true;
 | 
			
		||||
	}
 | 
			
		||||
	lua_pop(L, 1);
 | 
			
		||||
@@ -430,7 +430,7 @@ bool getintfield(lua_State *L, int table,
 | 
			
		||||
	lua_getfield(L, table, fieldname);
 | 
			
		||||
	bool got = false;
 | 
			
		||||
	if(lua_isnumber(L, -1)){
 | 
			
		||||
		result = lua_tonumber(L, -1);
 | 
			
		||||
		result = lua_tointeger(L, -1);
 | 
			
		||||
		got = true;
 | 
			
		||||
	}
 | 
			
		||||
	lua_pop(L, 1);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user