From 8273ae94da5514be7eb36de4d1c33522457ddf19 Mon Sep 17 00:00:00 2001 From: Cristy Date: Sun, 17 Feb 2019 13:12:54 -0500 Subject: [PATCH] ... --- MagickCore/annotate.c | 15 +++++++++++---- MagickCore/draw.c | 2 -- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/MagickCore/annotate.c b/MagickCore/annotate.c index ee980d874..6106246b9 100644 --- a/MagickCore/annotate.c +++ b/MagickCore/annotate.c @@ -1579,6 +1579,7 @@ static MagickBooleanType RenderFreetype(Image *image,const DrawInfo *draw_info, glyph.origin=origin; glyph.origin.x+=(FT_Pos) grapheme[i].x_offset; glyph.origin.y+=(FT_Pos) grapheme[i].y_offset; + glyph.image=0; ft_status=FT_Load_Glyph(face,glyph.id,flags); if (ft_status != 0) continue; @@ -1766,8 +1767,11 @@ static MagickBooleanType RenderFreetype(Image *image,const DrawInfo *draw_info, metrics->origin.y=(double) origin.y; if (metrics->origin.x > metrics->width) metrics->width=metrics->origin.x; - if (last_glyph.id != 0) - FT_Done_Glyph(last_glyph.image); + if (last_glyph.image != 0) + { + FT_Done_Glyph(last_glyph.image); + last_glyph.image=0; + } last_glyph=glyph; code=GetUTFCode(p+grapheme[i].cluster); } @@ -1775,8 +1779,11 @@ static MagickBooleanType RenderFreetype(Image *image,const DrawInfo *draw_info, grapheme=(GraphemeInfo *) RelinquishMagickMemory(grapheme); if (utf8 != (unsigned char *) NULL) utf8=(unsigned char *) RelinquishMagickMemory(utf8); - if (last_glyph.id != 0) - FT_Done_Glyph(last_glyph.image); + if (glyph.image != 0) + { + FT_Done_Glyph(glyph.image); + glyph.image=0; + } /* Determine font metrics. */ diff --git a/MagickCore/draw.c b/MagickCore/draw.c index 2663d5ace..d13c1e975 100644 --- a/MagickCore/draw.c +++ b/MagickCore/draw.c @@ -1809,8 +1809,6 @@ static MagickBooleanType DrawDashPolygon(const DrawInfo *draw_info, break; if (fabs(length) < MagickEpsilon) { - if (draw_info->dash_pattern[n] != 0.0) - n++; if (fabs(draw_info->dash_pattern[n]) < MagickEpsilon) n=0; length=scale*draw_info->dash_pattern[n]; -- 2.40.0