#include "lua.h"
#include "lauxlib.h"
-#if (LUA_VERSION_NUM == 502)
-#define luaL_register(L, N, R) luaL_setfuncs(L, R, 0)
+#if (LUA_VERSION_NUM == 501)
+#define luaL_setfuncs(L, R, N) luaL_register(L, NULL, R)
#endif
#ifndef lsig
lua_gettable(L, -2);
if(!lua_isnumber(L, -1)) {
- luaL_error(L, "invalid signal string");
+ return luaL_error(L, "invalid signal string");
}
sig = (int) lua_tonumber(L, -1);
lua_pop(L, 1); /* get rid of number we pushed */
} else {
luaL_checknumber(L, 1); /* will always error, with good error msg */
+ return luaL_error(L, "unreachable: invalid number was accepted");
}
/* set handler */
lua_gettable(L, -2);
if(!lua_isnumber(L, -1)) {
- luaL_error(L, "invalid signal string");
+ return luaL_error(L, "invalid signal string");
}
ret = (lua_Number) raise((int) lua_tonumber(L, -1));
lua_gettable(L, -2);
if(!lua_isnumber(L, -1)) {
- luaL_error(L, "invalid signal string");
+ return luaL_error(L, "invalid signal string");
}
ret = (lua_Number) kill((int) lua_tonumber(L, 1),
/* add the library */
lua_newtable(L);
- luaL_register(L, NULL, lsignal_lib);
+ luaL_setfuncs(L, lsignal_lib, 0);
/* push lua_signals table into the registry */
/* put the signals inside the library table too,