]> granicus.if.org Git - libass/commitdiff
Fix BorderStyle=3 with zero Outline and Shadow
authorDr.Smile <vabnick@gmail.com>
Fri, 6 Mar 2015 15:21:43 +0000 (18:21 +0300)
committerDr.Smile <vabnick@gmail.com>
Fri, 6 Mar 2015 15:21:43 +0000 (18:21 +0300)
libass/ass_render.c

index db85586429b9bb4d00a400c509da2d22ec7f7249..6b5ff853184d7545c5a28207cb1967b5e8634ddf 100644 (file)
@@ -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;
     }