summaryrefslogtreecommitdiffstats
path: root/libass/ass_drawing.c
diff options
context:
space:
mode:
authorGrigori Goronzy <greg@blackbox>2009-07-19 08:39:24 +0200
committerGrigori Goronzy <greg@blackbox>2009-07-19 15:56:24 +0200
commit9ad13b1e609a5973a9f9288978b720d82a1382f7 (patch)
treef9435fdc45cf89cbd60cc439be11a2d302980fdb /libass/ass_drawing.c
parent3fd039c16184d5864c8a3be561c8b547b52ddf83 (diff)
downloadlibass-9ad13b1e609a5973a9f9288978b720d82a1382f7.tar.bz2
libass-9ad13b1e609a5973a9f9288978b720d82a1382f7.tar.xz
Fix drawing parser memory leak
Always free the drawing glyph in ass_drawing_free; do not double free clip vector bitmap.
Diffstat (limited to 'libass/ass_drawing.c')
-rw-r--r--libass/ass_drawing.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/libass/ass_drawing.c b/libass/ass_drawing.c
index 091ec87..0b270c1 100644
--- a/libass/ass_drawing.c
+++ b/libass/ass_drawing.c
@@ -384,6 +384,7 @@ ass_drawing_t *ass_drawing_new(void *fontconfig_priv, ass_font_t *font,
*/
void ass_drawing_free(ass_drawing_t* drawing)
{
+ FT_Done_Glyph((FT_Glyph) drawing->glyph);
free(drawing->text);
free(drawing);
}
@@ -481,5 +482,3 @@ FT_OutlineGlyph *ass_drawing_parse(ass_drawing_t *drawing, int raw_mode)
drawing_free_tokens(drawing->tokens);
return &drawing->glyph;
}
-
-