diff -up texlive-2012/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/encoding.c.me texlive-2012/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/encoding.c
--- texlive-2012/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/encoding.c.me 2018-07-22 10:49:42.862075024 +0200
+++ texlive-2012/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/encoding.c 2018-07-22 10:52:00.667236454 +0200
@@ -541,6 +541,8 @@ return( NULL );
base = 256;
else if ( enc->char_cnt<=0x10000 )
base = 0x10000;
+ if (base==0)
+return( NULL );
encoded = galloc(base*sizeof(int));
memset(encoded,-1,base*sizeof(int));
unencoded = galloc(sf->glyphcnt*sizeof(int));