summaryrefslogtreecommitdiffstats
path: root/libass/ass_render.c
diff options
context:
space:
mode:
Diffstat (limited to 'libass/ass_render.c')
-rw-r--r--libass/ass_render.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index db85586..6b5ff85 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -1822,8 +1822,12 @@ static int is_new_bm_run(GlyphInfo *info, GlyphInfo *last)
static void make_shadow_bitmap(CombinedBitmapInfo *info, ASS_Renderer *render_priv)
{
if (!(info->filter.flags & FILTER_NONZERO_SHADOW)) {
- if (info->bm_o && !(info->filter.flags & FILTER_BORDER_STYLE_3))
+ if (info->bm_o && !(info->filter.flags & FILTER_BORDER_STYLE_3)) {
fix_outline(info->bm, info->bm_o);
+ } else if (info->bm_o && !(info->filter.flags & FILTER_NONZERO_BORDER)) {
+ ass_free_bitmap(info->bm_o);
+ info->bm_o = 0;
+ }
return;
}