summaryrefslogtreecommitdiffstats
path: root/libass/ass_drawing.h
diff options
context:
space:
mode:
authorGrigori Goronzy <greg@blackbox>2010-08-09 02:55:30 +0200
committerGrigori Goronzy <greg@blackbox>2010-08-09 02:55:30 +0200
commit4785892febea2fbb127e9ec174035991c06dea95 (patch)
tree8daf5a478c1c88dd134108bd1fb760bcfc55669f /libass/ass_drawing.h
parentd8727de26b1e6ccf2682437e9f23d16a0be7ee79 (diff)
downloadlibass-4785892febea2fbb127e9ec174035991c06dea95.tar.bz2
libass-4785892febea2fbb127e9ec174035991c06dea95.tar.xz
Fix drawing leakage: delay glyph allocation
Delay allocation of the "faux" glyph until a drawing is parsed. This helps with fixing a (pretty bad) memory leak and also reduces frame overhead a little.
Diffstat (limited to 'libass/ass_drawing.h')
-rw-r--r--libass/ass_drawing.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/libass/ass_drawing.h b/libass/ass_drawing.h
index 0223271..f677fcd 100644
--- a/libass/ass_drawing.h
+++ b/libass/ass_drawing.h
@@ -57,7 +57,9 @@ typedef struct {
int hash; // hash value (for caching)
// private
- FT_Library ftlibrary; // FT library instance, needed for font ops
+ FT_Library ftlibrary; // needed for font ops
+ ASS_Font *font; // dito
+ void *fontconfig_priv; // dito
ASS_Library *library;
int size; // current buffer size
ASS_DrawingToken *tokens; // tokenized drawing
@@ -69,7 +71,7 @@ typedef struct {
} ASS_Drawing;
ASS_Drawing *ass_drawing_new(void *fontconfig_priv, ASS_Font *font,
- ASS_Hinting hint, FT_Library lib);
+ FT_Library lib);
void ass_drawing_free(ASS_Drawing* drawing);
void ass_drawing_add_char(ASS_Drawing* drawing, char symbol);
void ass_drawing_hash(ASS_Drawing* drawing);