From fa1adbbac4b3c1312587440684729652f89b3b73 Mon Sep 17 00:00:00 2001 From: lethosor Date: Sat, 18 Mar 2017 17:55:39 -0400 Subject: [PATCH] Allow lua integer writes to accept anything that can be converted to an integer May address #1044 --- library/LuaTypes.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/library/LuaTypes.cpp b/library/LuaTypes.cpp index f281afe86..5b5a174fa 100644 --- a/library/LuaTypes.cpp +++ b/library/LuaTypes.cpp @@ -122,10 +122,11 @@ void df::integer_identity_base::lua_read(lua_State *state, int fname_idx, void * void df::integer_identity_base::lua_write(lua_State *state, int fname_idx, void *ptr, int val_index) { - if (!lua_isinteger(state, val_index)) + int is_num = 0; + auto value = lua_tointegerx(state, val_index, &is_num); + if (!is_num) field_error(state, fname_idx, "integer expected", "write"); - - write(ptr, lua_tointeger(state, val_index)); + write(ptr, value); } void df::float_identity_base::lua_read(lua_State *state, int fname_idx, void *ptr)