From 5321d4ea143407b9f1233c46978bbbb17f2d64d3 Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sun, 17 Jul 2022 16:59:23 +0200 Subject: Fix support for unimap-free fonts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- libparsepsf.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/libparsepsf.c b/libparsepsf.c index 485cce1..a3be5f3 100644 --- a/libparsepsf.c +++ b/libparsepsf.c @@ -417,14 +417,14 @@ libparsepsf_get_glyph(const struct libparsepsf_font *font, const char *c, size_t errno = EILSEQ; return 0; } - if (remp) - rem = *remp - n; - c = &c[n]; glyph = (size_t)cp; if (glyph >= font->num_glyphs) return 0; - glyph += 1; - goto out; + if (next_cp) + *next_cp = &c[n]; + if (remp) + *remp = *remp - n; + return glyph + 1; } else if (remp) { rem = *remp; @@ -459,7 +459,6 @@ libparsepsf_get_glyph(const struct libparsepsf_font *font, const char *c, size_t } glyph = node->terminal[*(const uint8_t *)c]; -out: if (glyph) { if (next_cp) *next_cp = &c[1]; -- cgit v1.2.3-70-g09d2