freetype-commit
[Top][All Lists]
Advanced

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

[Git][freetype/freetype][master] [raster] Clean up contour indexing.


From: Alexei Podtelezhnikov (@apodtele)
Subject: [Git][freetype/freetype][master] [raster] Clean up contour indexing.
Date: Tue, 21 Feb 2023 16:17:11 +0000

Alexei Podtelezhnikov pushed to branch master at FreeType / FreeType

Commits:

  • 3f01161f
    by Alexei Podtelezhnikov at 2023-02-21T16:17:07+00:00
    [raster] Clean up contour indexing.
    
    * src/raster/ftraster.c (Decompose_Curve, Convert_Glyph): Use consistent
    index types (Int) and compact iterations.

1 changed file:

Changes:

  • src/raster/ftraster.c
    ... ... @@ -1742,9 +1742,9 @@
    1742 1742
        *   SUCCESS on success, FAILURE on error.
    
    1743 1743
        */
    
    1744 1744
       static Bool
    
    1745
    -  Decompose_Curve( RAS_ARGS UShort  first,
    
    1746
    -                            UShort  last,
    
    1747
    -                            Int     flipped )
    
    1745
    +  Decompose_Curve( RAS_ARGS Int  first,
    
    1746
    +                            Int  last,
    
    1747
    +                            Int  flipped )
    
    1748 1748
       {
    
    1749 1749
         FT_Vector   v_last;
    
    1750 1750
         FT_Vector   v_control;
    
    ... ... @@ -1969,8 +1969,8 @@
    1969 1969
       static Bool
    
    1970 1970
       Convert_Glyph( RAS_ARGS Int  flipped )
    
    1971 1971
       {
    
    1972
    -    Int   i;
    
    1973
    -    UInt  start;
    
    1972
    +    Int  i;
    
    1973
    +    Int  first, last;
    
    1974 1974
     
    
    1975 1975
     
    
    1976 1976
         ras.fProfile = NULL;
    
    ... ... @@ -1985,8 +1985,7 @@
    1985 1985
         ras.cProfile->offset = ras.top;
    
    1986 1986
         ras.num_Profs        = 0;
    
    1987 1987
     
    
    1988
    -    start = 0;
    
    1989
    -
    
    1988
    +    last = -1;
    
    1990 1989
         for ( i = 0; i < ras.outline.n_contours; i++ )
    
    1991 1990
         {
    
    1992 1991
           PProfile  lastProfile;
    
    ... ... @@ -1996,12 +1995,11 @@
    1996 1995
           ras.state    = Unknown_State;
    
    1997 1996
           ras.gProfile = NULL;
    
    1998 1997
     
    
    1999
    -      if ( Decompose_Curve( RAS_VARS (UShort)start,
    
    2000
    -                                     (UShort)ras.outline.contours[i],
    
    2001
    -                                     flipped ) )
    
    2002
    -        return FAILURE;
    
    1998
    +      first = last + 1;
    
    1999
    +      last  = ras.outline.contours[i];
    
    2003 2000
     
    
    2004
    -      start = (UShort)ras.outline.contours[i] + 1;
    
    2001
    +      if ( Decompose_Curve( RAS_VARS first, last, flipped ) )
    
    2002
    +        return FAILURE;
    
    2005 2003
     
    
    2006 2004
           /* we must now check whether the extreme arcs join or not */
    
    2007 2005
           if ( FRAC( ras.lastY ) == 0 &&
    


  • reply via email to

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