diff options
author | rcombs <rcombs@rcombs.me> | 2020-05-05 20:07:11 -0500 |
---|---|---|
committer | rcombs <rcombs@rcombs.me> | 2020-05-26 20:56:44 -0500 |
commit | 593133d2f29dd98b6d0f1d2806dd2aed57b75a79 (patch) | |
tree | 02d69449aecc8fded136fdc1381565ead0120cc8 | |
parent | b3bf60641f889dc8e318ebb93812a4a08f62871c (diff) | |
download | libass-593133d2f29dd98b6d0f1d2806dd2aed57b75a79.tar.bz2 libass-593133d2f29dd98b6d0f1d2806dd2aed57b75a79.tar.xz |
coretext: fix leak on error
-rw-r--r-- | libass/ass_coretext.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/libass/ass_coretext.c b/libass/ass_coretext.c index f733277..d9e4c94 100644 --- a/libass/ass_coretext.c +++ b/libass/ass_coretext.c @@ -62,18 +62,19 @@ static void destroy_font(void *priv) static bool check_postscript(void *priv) { + bool ret = false; CTFontDescriptorRef fontd = priv; CFNumberRef cfformat = CTFontDescriptorCopyAttribute(fontd, kCTFontFormatAttribute); int format; - if (!CFNumberGetValue(cfformat, kCFNumberIntType, &format)) - return false; + if (CFNumberGetValue(cfformat, kCFNumberIntType, &format)) { + ret = format == kCTFontFormatOpenTypePostScript || + format == kCTFontFormatPostScript; + } SAFE_CFRelease(cfformat); - - return format == kCTFontFormatOpenTypePostScript || - format == kCTFontFormatPostScript; + return ret; } static bool check_glyph(void *priv, uint32_t code) |