]> git.eshelyaron.com Git - emacs.git/commitdiff
Correct implementations of FLIPRGON and FLIPRGOFF
authorPo Lu <luangruo@yahoo.com>
Sun, 14 Jan 2024 13:06:10 +0000 (21:06 +0800)
committerPo Lu <luangruo@yahoo.com>
Sun, 14 Jan 2024 13:07:21 +0000 (21:07 +0800)
* src/sfnt.c (sfnt_interpret_fliprgoff)
(sfnt_interpret_fliprgon): Reorder arguments to match
the order in which arguments are popped by macro wrappers.
Fix sundry typos.

src/sfnt.c

index f4c023f35c62ba6803c7c31ba71ca1bd24c66eb3..2f0153b9a758ce91b1eb434b54faf986f1f61246 100644 (file)
@@ -8966,7 +8966,7 @@ sfnt_dual_project_vector (struct sfnt_interpreter *interpreter,
 
 static void
 sfnt_interpret_fliprgoff (struct sfnt_interpreter *interpreter,
-                         uint32_t l, uint32_t h)
+                         uint32_t h, uint32_t l)
 {
   uint32_t i;
 
@@ -8976,7 +8976,7 @@ sfnt_interpret_fliprgoff (struct sfnt_interpreter *interpreter,
   if (!interpreter->state.zp0)
     return;
 
-  for (i = l; i < h; ++i)
+  for (i = l; i <= h; ++i)
     interpreter->glyph_zone->flags[i] &= ~01;
 }
 
@@ -8985,7 +8985,7 @@ sfnt_interpret_fliprgoff (struct sfnt_interpreter *interpreter,
 
 static void
 sfnt_interpret_fliprgon (struct sfnt_interpreter *interpreter,
-                        uint32_t l, uint32_t h)
+                        uint32_t h, uint32_t l)
 {
   uint32_t i;
 
@@ -8995,8 +8995,8 @@ sfnt_interpret_fliprgon (struct sfnt_interpreter *interpreter,
   if (!interpreter->state.zp0)
     return;
 
-  for (i = l; i < h; ++i)
-    interpreter->glyph_zone->flags[i] |= ~01;
+  for (i = l; i <= h; ++i)
+    interpreter->glyph_zone->flags[i] |= 01;
 }
 
 /* Interpret a FLIPPT instruction in INTERPRETER.  For loop times, pop