aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/lua-modules/luaexpat.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/lua-modules/luaexpat.patch')
-rw-r--r--nixpkgs/pkgs/development/lua-modules/luaexpat.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/lua-modules/luaexpat.patch b/nixpkgs/pkgs/development/lua-modules/luaexpat.patch
new file mode 100644
index 00000000000..3dd60910842
--- /dev/null
+++ b/nixpkgs/pkgs/development/lua-modules/luaexpat.patch
@@ -0,0 +1,36 @@
+diff --git a/src/lxplib.c b/src/lxplib.c
+index 1c972db..5712611 100644
+--- a/src/lxplib.c
++++ b/src/lxplib.c
+@@ -590,7 +590,7 @@ static void set_info (lua_State *L) {
+ /*
+ ** Adapted from Lua 5.2.0
+ */
+-static void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup) {
++static void compat_luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup) {
+ luaL_checkstack(L, nup, "too many upvalues");
+ for (; l->name != NULL; l++) { /* fill the table with given functions */
+ int i;
+@@ -602,6 +602,8 @@ static void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup) {
+ }
+ lua_pop(L, nup); /* remove upvalues */
+ }
++#else
++#define compat_luaL_setfuncs(L, reg, nup) luaL_setfuncs(L, reg, nup)
+ #endif
+
+
+@@ -612,11 +614,11 @@ int luaopen_lxp (lua_State *L) {
+ lua_pushvalue(L, -2);
+ lua_rawset(L, -3);
+
+- luaL_setfuncs (L, lxp_meths, 0);
++ compat_luaL_setfuncs (L, lxp_meths, 0);
+ lua_pop (L, 1); /* remove metatable */
+
+ lua_newtable (L);
+- luaL_setfuncs (L, lxp_funcs, 0);
++ compat_luaL_setfuncs (L, lxp_funcs, 0);
+ set_info (L);
+ return 1;
+ }