diff options
author | Dr.Smile <vabnick@gmail.com> | 2016-07-16 04:01:55 +0300 |
---|---|---|
committer | Dr.Smile <vabnick@gmail.com> | 2016-07-16 04:01:55 +0300 |
commit | 8465a0c6c38301246695ad8e83baee57847f33db (patch) | |
tree | 1c4b78b57647a6dce2ab28ad5bbb771eedc7f51d /libass | |
parent | 669d06d814da42f7046689c97f578756d6cb6aa7 (diff) | |
download | libass-8465a0c6c38301246695ad8e83baee57847f33db.tar.bz2 libass-8465a0c6c38301246695ad8e83baee57847f33db.tar.xz |
cache: fix ownership tracking issues of ASS_Font
Diffstat (limited to 'libass')
-rw-r--r-- | libass/ass_cache.c | 2 | ||||
-rw-r--r-- | libass/ass_shaper.c | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/libass/ass_cache.c b/libass/ass_cache.c index f24620b7..148faa1f 100644 --- a/libass/ass_cache.c +++ b/libass/ass_cache.c @@ -454,7 +454,7 @@ void ass_cache_inc_ref(void *value) if (!value) return; CacheItem *item = value_to_item(value); - assert(item->size); + assert(item->size && item->ref_count); item->ref_count++; } diff --git a/libass/ass_shaper.c b/libass/ass_shaper.c index 95222ae4..2707b236 100644 --- a/libass/ass_shaper.c +++ b/libass/ass_shaper.c @@ -565,6 +565,7 @@ shape_harfbuzz_process_run(GlyphInfo *glyphs, hb_buffer_t *buf, int offset) info->next = malloc(sizeof(GlyphInfo)); if (info->next) { memcpy(info->next, info, sizeof(GlyphInfo)); + ass_cache_inc_ref(info->font); info = info->next; info->next = NULL; } |