From eff1313c6b7eb7bec217f7b9178857abe8c77356 Mon Sep 17 00:00:00 2001 From: Po Lu Date: Wed, 25 Oct 2023 10:19:36 +0800 Subject: [PATCH] Correct computation of intermediate axis coordinates * src/sfnt.c (sfnt_compute_tuple_scale, sfnt_vary_simple_glyph) (sfnt_vary_compound_glyph): Correct typos involving intermediate_end (or something of the like) being set to intermediate_start. --- src/sfnt.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/sfnt.c b/src/sfnt.c index 01d061be79c..7559055e8c2 100644 --- a/src/sfnt.c +++ b/src/sfnt.c @@ -14116,7 +14116,7 @@ sfnt_compute_tuple_scale (struct sfnt_blend *blend, bool intermediate_p, if (intermediate_p) { start = intermediate_start[i] * 4; - end = intermediate_start[i] * 4; + end = intermediate_end[i] * 4; } /* Ignore tuples that can be skipped. */ @@ -14669,7 +14669,7 @@ sfnt_vary_simple_glyph (struct sfnt_blend *blend, sfnt_glyph id, coords = alloca (gvar->axis_count * sizeof *coords * 3); intermediate_start = coords + gvar->axis_count; - intermediate_end = coords + gvar->axis_count; + intermediate_end = intermediate_start + gvar->axis_count; /* Allocate arrays of booleans and fwords to keep track of which points have been touched. */ @@ -15041,7 +15041,7 @@ sfnt_vary_compound_glyph (struct sfnt_blend *blend, sfnt_glyph id, coords = alloca (gvar->axis_count * sizeof *coords * 3); intermediate_start = coords + gvar->axis_count; - intermediate_end = coords + gvar->axis_count; + intermediate_end = intermediate_start + gvar->axis_count; while (ntuples--) { -- 2.39.2