Code: Select all
$ ftlint 10 Fonts/FortuneCity.ttf
Fonts/FortuneCity.ttf: glyph 106: 0x0014
1 fail.
With trace output enabled, I could obtain more detailed error information:
Code: Select all
FT2_DEBUG=any:1 ftlint 10 Fonts/FortuneCity.ttf
Init_Context: new object at 0x0x17b0350
FT_Stream_Open: opened `/home/mvg/Osmos/Fonts/FortuneCity.ttf' (40303 bytes) successfully
tt_face_get_location: too large offset=0x00005450 found for gid=0x006b, truncate at the end of glyf table (0x00005394)
/home/mvg/Osmos/Fonts/FortuneCity.ttf: glyph 106: 0x0014
tt_face_get_location: too large offset=0x00005450 found for gid=0x006b, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005450 found for gid=0x006c, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005450 found for gid=0x006d, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005450 found for gid=0x006e, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000056a2 found for gid=0x006f, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000056a2 found for gid=0x0070, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005775 found for gid=0x0071, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005775 found for gid=0x0072, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005775 found for gid=0x0073, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000057e6 found for gid=0x0074, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000058ae found for gid=0x0075, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005954 found for gid=0x0076, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005954 found for gid=0x0077, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005954 found for gid=0x0078, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005a1e found for gid=0x0079, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005a1e found for gid=0x007a, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005a1e found for gid=0x007b, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005a1e found for gid=0x007c, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005a1e found for gid=0x007d, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005b3e found for gid=0x007e, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005b56 found for gid=0x007f, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005b6e found for gid=0x0080, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005b86 found for gid=0x0081, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005b9e found for gid=0x0082, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005bb6 found for gid=0x0083, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005bce found for gid=0x0084, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005bce found for gid=0x0085, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005bea found for gid=0x0086, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005c02 found for gid=0x0087, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005c1a found for gid=0x0088, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005c32 found for gid=0x0089, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005c4a found for gid=0x008a, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005c62 found for gid=0x008b, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005c7a found for gid=0x008c, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005c92 found for gid=0x008d, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005caa found for gid=0x008e, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005dc4 found for gid=0x008f, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005ddc found for gid=0x0090, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005df4 found for gid=0x0091, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005e0c found for gid=0x0092, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005e24 found for gid=0x0093, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005e3c found for gid=0x0094, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005e54 found for gid=0x0095, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005ee3 found for gid=0x0096, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005ee3 found for gid=0x0097, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005efb found for gid=0x0098, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005f13 found for gid=0x0099, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005f2b found for gid=0x009a, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005f43 found for gid=0x009b, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00005f5b found for gid=0x009c, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006040 found for gid=0x009d, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006244 found for gid=0x009e, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000625c found for gid=0x009f, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006274 found for gid=0x00a0, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000628c found for gid=0x00a1, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000062a4 found for gid=0x00a2, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000062bc found for gid=0x00a3, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000062d4 found for gid=0x00a4, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000062d4 found for gid=0x00a5, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000062e8 found for gid=0x00a6, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006300 found for gid=0x00a7, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006318 found for gid=0x00a8, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006330 found for gid=0x00a9, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006348 found for gid=0x00aa, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006360 found for gid=0x00ab, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006378 found for gid=0x00ac, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006438 found for gid=0x00ad, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000064eb found for gid=0x00ae, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000064eb found for gid=0x00af, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006503 found for gid=0x00b0, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000651b found for gid=0x00b1, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006533 found for gid=0x00b2, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000654b found for gid=0x00b3, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006563 found for gid=0x00b4, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000657b found for gid=0x00b5, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006628 found for gid=0x00b6, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006628 found for gid=0x00b7, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006640 found for gid=0x00b8, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006658 found for gid=0x00b9, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006670 found for gid=0x00ba, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006688 found for gid=0x00bb, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000066a0 found for gid=0x00bc, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000678e found for gid=0x00bd, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000067a6 found for gid=0x00be, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006805 found for gid=0x00bf, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006805 found for gid=0x00c0, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006805 found for gid=0x00c1, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000681d found for gid=0x00c2, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006835 found for gid=0x00c3, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000684d found for gid=0x00c4, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000684d found for gid=0x00c5, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x000068e0 found for gid=0x00c6, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000699c found for gid=0x00c7, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x0000699c found for gid=0x00c8, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006a65 found for gid=0x00c9, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006b56 found for gid=0x00ca, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006b56 found for gid=0x00cb, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006b56 found for gid=0x00cc, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006bd3 found for gid=0x00cd, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006c50 found for gid=0x00ce, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006ccd found for gid=0x00cf, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006d94 found for gid=0x00d0, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006e5b found for gid=0x00d1, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006f22 found for gid=0x00d2, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006f22 found for gid=0x00d3, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006f22 found for gid=0x00d4, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006f22 found for gid=0x00d5, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00006fcb found for gid=0x00d6, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00007248 found for gid=0x00d7, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00007248 found for gid=0x00d8, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00007248 found for gid=0x00d9, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00007248 found for gid=0x00da, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00db, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00dc, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00dd, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00de, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00df, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e0, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e1, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e2, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e3, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e4, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e5, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e6, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e7, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e8, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00e9, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00ea, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00eb, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00ec, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00ed, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00ee, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00ef, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00f0, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00f1, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00f2, exceeding the end of glyf table (0x00005394)
tt_face_get_location: too large offset=0x00008017 found for gid=0x00f3, exceeding the end of glyf table (0x00005394)
1 fail.
The error code 0x14 stands for "invalid outline" according to freetype/fterrdef.h. The error message cannot be reproduced with freetype 2.4.2 either. After doing a git bisect I isolated one commit as the one causing this error message for FortuneCity.ttf. That commit adds a new check that hasn't been present before. It's exactly the one leading to the trace messages.
I don't know much about the internal format of a TTF file, but I'll assume that the freetype devs knew what they were doing and that the font is indeed broken in this respect. I suggest you try obtain a fixed font somehow, or explaining why the font is correct and the check in freetype is in error.
As using the game menu becomes almost impossible without text, and as novice users in particular might not know of a safe way to exit a full screen app they can't control properly, I would also suggest you abort starting the game if the fonts won't load, instead of just issuing a warning and continuing as if nothing happened.