ref: 72a8af8a0d1405295f0901d30bee3b95ff239dd2
parent: 5ec4e04076757221808057aab6d5ac06b2c0939a
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Tue Mar 28 12:13:19 EDT 2023
truetypefs: fall back instead of crashing when could not get a glyph
--- a/sys/src/cmd/truetypefs.c
+++ b/sys/src/cmd/truetypefs.c
@@ -166,8 +166,10 @@
g = 0;
else
g = ttffindchar(t, s->start + i);
- gs[i] = ttfgetglyph(t, g, 1);
- w += gs[i]->width;
+ if((gs[i] = ttfgetglyph(t, g, 1)) == nil && g != 0)
+ gs[i] = ttfgetglyph(t, 0, 1);
+ assert(gs[i] != nil);
+ w += gs[i]->width;
}
sz = 5 * 12 + (w+7>>3) * h + 3 * 12 + (n + 1) * 6;
d = emalloc(sz);
--
⑨