freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2] master fecd19b44: * src/base/ftstroke.c (FT_Stroker_ParseOut


From: Werner Lemberg
Subject: [freetype2] master fecd19b44: * src/base/ftstroke.c (FT_Stroker_ParseOutline): Clean up contour indexing.
Date: Mon, 20 Feb 2023 12:13:51 -0500 (EST)

branch: master
commit fecd19b449c5b8a5a3a935466df1e5a9c5bcc0bd
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>

    * src/base/ftstroke.c (FT_Stroker_ParseOutline): Clean up contour indexing.
---
 src/base/ftstroke.c | 21 ++++++++-------------
 1 file changed, 8 insertions(+), 13 deletions(-)

diff --git a/src/base/ftstroke.c b/src/base/ftstroke.c
index db358e772..92f1e4308 100644
--- a/src/base/ftstroke.c
+++ b/src/base/ftstroke.c
@@ -2055,7 +2055,9 @@
     FT_Error    error;
 
     FT_Int      n;         /* index of contour in outline     */
-    FT_UInt     first;     /* index of first point in contour */
+    FT_Int      first;     /* index of first point in contour */
+    FT_Int      last;      /* index of last point in contour  */
+
     FT_Int      tag;       /* current point's state           */
 
 
@@ -2067,22 +2069,17 @@
 
     FT_Stroker_Rewind( stroker );
 
-    first = 0;
-
+    last = -1;
     for ( n = 0; n < outline->n_contours; n++ )
     {
-      FT_UInt  last;  /* index of last point in contour */
-
-
-      last  = (FT_UInt)outline->contours[n];
-      limit = outline->points + last;
+      first = last + 1;
+      last  = outline->contours[n];
 
       /* skip empty points; we don't stroke these */
       if ( last <= first )
-      {
-        first = last + 1;
         continue;
-      }
+
+      limit = outline->points + last;
 
       v_start = outline->points[first];
       v_last  = outline->points[last];
@@ -2231,8 +2228,6 @@
         if ( error )
           goto Exit;
       }
-
-      first = last + 1;
     }
 
     return FT_Err_Ok;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]