diff options
Diffstat (limited to 'src/l_sig_handler.c')
-rw-r--r-- | src/l_sig_handler.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/l_sig_handler.c b/src/l_sig_handler.c index 82902ca..f0616b8 100644 --- a/src/l_sig_handler.c +++ b/src/l_sig_handler.c @@ -74,7 +74,7 @@ static int l_signal_handle(lua_State *L) return 1; } -static const struct luaL_reg signal_funcs [] = { +static const struct luaL_Reg signal_funcs [] = { { "init", l_signal_init }, { "stop", l_signal_stop }, { "handle", l_signal_handle }, @@ -84,6 +84,13 @@ static const struct luaL_reg signal_funcs [] = { LUALIB_API int luaopen_signal(lua_State *L) { +#if LUA_VERSION_NUM > 501 + lua_newtable(L); + luaL_setfuncs(L, signal_funcs, 0); + lua_pushvalue(L, -1); + lua_setglobal(L, LUA_SIGNALLIBNAME); +#else luaL_register(L, LUA_SIGNALLIBNAME, signal_funcs); +#endif return 1; } |