diff options
author | Dr.Smile <vabnick@gmail.com> | 2020-10-10 21:59:50 +0300 |
---|---|---|
committer | Oleg Oshmyan <chortos@inbox.lv> | 2020-10-11 01:27:48 +0300 |
commit | 81e99a73d16873a782c99d068db99485043fcba4 (patch) | |
tree | 6711eb8e3b9c48e4bcae9d04396960c54121f64c | |
parent | e8adb8a775db8558843d2946664c935d4677f56f (diff) | |
download | libass-81e99a73d16873a782c99d068db99485043fcba4.tar.bz2 libass-81e99a73d16873a782c99d068db99485043fcba4.tar.xz |
font: use library as a failure flag
ass_font_clear() can now free family string even in a failure case.
Fixes https://github.com/libass/libass/issues/414.
-rw-r--r-- | libass/ass_font.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libass/ass_font.c b/libass/ass_font.c index 80172ad..29ee877 100644 --- a/libass/ass_font.c +++ b/libass/ass_font.c @@ -245,7 +245,7 @@ ASS_Font *ass_font_new(ASS_Renderer *render_priv, ASS_FontDesc *desc) ASS_Font *font = ass_cache_get(render_priv->cache.font_cache, desc, render_priv); if (!font) return NULL; - if (font->desc.family) + if (font->library) return font; ass_cache_dec_ref(font); return NULL; @@ -270,7 +270,7 @@ size_t ass_font_construct(void *key, void *value, void *priv) int error = add_face(render_priv->fontselect, font, 0); if (error == -1) - font->desc.family = NULL; + font->library = NULL; return 1; } |