From 4c3bd2ab9372658ba2a3f09935db0c774abdff41 Mon Sep 17 00:00:00 2001 From: Alexei Podtelezhnikov Date: Wed, 27 Jan 2021 15:54:34 -0500 Subject: [PATCH] [stroker] Minor clean-up. * src/base/ftstroke.c (FT_Stroker_{ConicTo,CubicTo}): Reset the last line length. (FT_Stroker_EndSubPath): Call `ft_stroker_process_corner'. --- ChangeLog | 8 ++++++++ src/base/ftstroke.c | 36 ++++++++---------------------------- 2 files changed, 16 insertions(+), 28 deletions(-) diff --git a/ChangeLog b/ChangeLog index 758bec7c1..1668f7b45 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2021-01-27 Alexei Podtelezhnikov + + [stroker] Minor clean-up. + + * src/base/ftstroke.c (FT_Stroker_{ConicTo,CubicTo}): Reset the last + line length. + (FT_Stroker_EndSubPath): Call `ft_stroker_process_corner'. + 2021-01-27 Vincent Torri * builds/windows/ftsystem.c: Add shared memory support on Windows. diff --git a/src/base/ftstroke.c b/src/base/ftstroke.c index e209639cc..d0ad8335d 100644 --- a/src/base/ftstroke.c +++ b/src/base/ftstroke.c @@ -1528,7 +1528,8 @@ stroker->angle_in = angle_out; } - stroker->center = *to; + stroker->center = *to; + stroker->line_length = 0; Exit: return error; @@ -1744,7 +1745,8 @@ stroker->angle_in = angle_out; } - stroker->center = *to; + stroker->center = *to; + stroker->line_length = 0; Exit: return error; @@ -1897,10 +1899,6 @@ } else { - FT_Angle turn; - FT_Int inside_side; - - /* close the path if needed */ if ( stroker->center.x != stroker->subpath_start.x || stroker->center.y != stroker->subpath_start.y ) @@ -1912,29 +1910,11 @@ /* process the corner */ stroker->angle_out = stroker->subpath_angle; - turn = FT_Angle_Diff( stroker->angle_in, - stroker->angle_out ); - /* no specific corner processing is required if the turn is 0 */ - if ( turn != 0 ) - { - /* when we turn to the right, the inside side is 0 */ - /* otherwise, the inside side is 1 */ - inside_side = ( turn < 0 ); - - error = ft_stroker_inside( stroker, - inside_side, - stroker->subpath_line_length ); - if ( error ) - goto Exit; - - /* process the outside side */ - error = ft_stroker_outside( stroker, - !inside_side, - stroker->subpath_line_length ); - if ( error ) - goto Exit; - } + error = ft_stroker_process_corner( stroker, + stroker->subpath_line_length ); + if ( error ) + goto Exit; /* then end our two subpaths */ ft_stroke_border_close( stroker->borders + 0, FALSE );