diff options
Diffstat (limited to 'lbitlib.c')
-rw-r--r-- | lbitlib.c | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lbitlib.c,v 1.4 2010/02/11 15:55:29 roberto Exp roberto $ | 2 | ** $Id: lbitlib.c,v 1.5 2010/07/02 11:38:13 roberto Exp roberto $ |
3 | ** Standard library for bitwise operations | 3 | ** Standard library for bitwise operations |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -23,8 +23,9 @@ typedef unsigned LUA_INT32 b_uint; | |||
23 | 23 | ||
24 | static b_uint getuintarg (lua_State *L, int arg) { | 24 | static b_uint getuintarg (lua_State *L, int arg) { |
25 | b_uint r; | 25 | b_uint r; |
26 | lua_Number x = lua_tonumber(L, arg); | 26 | int isnum; |
27 | if (x == 0) luaL_checktype(L, arg, LUA_TNUMBER); | 27 | lua_Number x = lua_tonumberx(L, arg, &isnum); |
28 | if (!isnum) luaL_typeerror(L, arg, "number"); | ||
28 | lua_number2uint(r, x); | 29 | lua_number2uint(r, x); |
29 | return r; | 30 | return r; |
30 | } | 31 | } |