Blob Blame History Raw
diff -up texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ctype.c.crashfix texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ctype.c
--- texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ctype.c.crashfix	2017-09-12 14:16:33.675640506 -0400
+++ texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ctype.c	2017-09-12 14:16:53.953166205 -0400
@@ -245,6 +245,10 @@ void* to_cdata(lua_State* L, int idx, st
 
     lua_pop(L, 1); /* mt */
     cd = (struct cdata*) lua_touserdata(L, idx);
+    if (!cd) {
+        lua_pushnil(L);
+        return NULL;
+    }
     *ct = cd->type;
     lua_getuservalue(L, idx);
 
diff -up texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ffi.h.crashfix texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ffi.h
--- texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ffi.h.crashfix	2017-09-12 14:17:26.290409821 -0400
+++ texlive-core-20170520/source/texk/web2c/luatexdir/luaffi/ffi.h	2017-09-12 14:17:43.041018016 -0400
@@ -370,7 +370,7 @@ __declspec(align(16))
 #endif
 struct cdata {
     const struct ctype type
-#ifdef __GNUC__
+#if 0 /* def __GNUC__ */
       __attribute__ ((aligned(16)))
 #endif
       ;