From 6b4f06608e17b9087f7cbd1aa49f327823193149 Mon Sep 17 00:00:00 2001 From: Luigi Scarso <luigi.scarso@gmail.com> Date: Thu, 31 Aug 2017 10:03:37 +0000 Subject: [PATCH] experimental fix for ffi supporting callbacks in vararg functions. --- source/texk/web2c/luatexdir/luaffi/ffi.c | 7 ++++++- source/texk/web2c/luatexdir/luatex_svnversion.h | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/source/texk/web2c/luatexdir/luaffi/ffi.c b/source/texk/web2c/luatexdir/luaffi/ffi.c index abeeb5f1f..7771b512d 100644 --- a/source/texk/web2c/luatexdir/luaffi/ffi.c +++ b/source/texk/web2c/luatexdir/luaffi/ffi.c @@ -387,7 +387,12 @@ static size_t unpack_vararg(lua_State* L, int i, char* to) } else if (ct.type == INT64_TYPE) { *(int64_t*) to = *(int64_t*) p; return sizeof(int64_t); - } + + } else if (ct.type == FUNCTION_PTR_TYPE) { + *(cfunction *) to = *(cfunction *)p; + return sizeof(cfunction); + } + goto err; case LUA_TNIL: diff --git a/source/texk/web2c/luatexdir/luatex_svnversion.h b/source/texk/web2c/luatexdir/luatex_svnversion.h index a9ed18e68..7ebe8828c 100644 --- a/source/texk/web2c/luatexdir/luatex_svnversion.h +++ b/source/texk/web2c/luatexdir/luatex_svnversion.h @@ -1 +1 @@ -#define luatex_svn_revision 6390 +#define luatex_svn_revision 6391 -- GitLab