diff options
Diffstat (limited to 'editors/fxite/files/patch-src_fxasq__lua.c')
-rw-r--r-- | editors/fxite/files/patch-src_fxasq__lua.c | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/editors/fxite/files/patch-src_fxasq__lua.c b/editors/fxite/files/patch-src_fxasq__lua.c new file mode 100644 index 000000000000..9c92e66a8a70 --- /dev/null +++ b/editors/fxite/files/patch-src_fxasq__lua.c @@ -0,0 +1,50 @@ +--- src/fxasq_lua.c.orig 2013-10-03 09:22:51 UTC ++++ src/fxasq_lua.c +@@ -31,6 +31,9 @@ + #include "intl.h" + #include "fxasq_lua.h" + ++#if LUA_VERSION_NUM<502 ++# define lua_rawlen lua_objlen ++#endif + + #define DLG_MODULE_NAME "dialog" + #define MetaName "_fxasq_metatable" +@@ -234,7 +237,7 @@ static int asq_new(lua_State *L) { + if (argc>=2) { + luaL_argcheck(L,lua_istable(L,2),2,_("expected table")); + } +- n=lua_objlen(L,2); ++ n=lua_rawlen(L,2); + for (i=1;i<=n; i++) { + lua_rawgeti(L,2,i); + char msg[64]; +@@ -301,7 +304,7 @@ static int asq_done(lua_State *L) + + + +-static const struct luaL_reg asq_funcs[] = { ++static const struct luaL_Reg asq_funcs[] = { + {"new", asq_new}, + {"run", asq_run}, + {"label", asq_label}, +@@ -330,12 +333,15 @@ int luaopen_dialog(lua_State *L) + lua_pushvalue(L, -2); + lua_settable(L, -3); + +- luaL_getmetatable(L, MetaName); + lua_pushstring(L,"__gc"); + lua_pushcfunction(L,asq_done); + lua_rawset(L,-3); + +- luaL_register(L, NULL, &asq_funcs[1]); +- luaL_register(L, DLG_MODULE_NAME, asq_funcs); +- return 0; ++#if LUA_VERSION_NUM < 502 ++ luaL_Register(L, NULL, &asq_funcs[1]); ++ luaL_Register(L, DLG_MODULE_NAME, asq_funcs); ++#else ++ luaL_setfuncs(L,asq_funcs,0); ++#endif ++ return 1; + } |