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.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index 468c184..304e7b2 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -2416,8 +2416,9 @@ size_t ass_composite_construct(void *key, void *value, void *priv)
}
if (v->bm.buffer || v->bm_o.buffer) {
- ass_synth_blur(render_priv->engine, k->filter.flags & FILTER_BORDER_STYLE_3,
- k->filter.be, k->filter.blur, &v->bm, &v->bm_o);
+ if (!v->bm_o.buffer || (k->filter.flags & FILTER_BORDER_STYLE_3))
+ ass_synth_blur(render_priv->engine, &v->bm, k->filter.be, k->filter.blur);
+ ass_synth_blur(render_priv->engine, &v->bm_o, k->filter.be, k->filter.blur);
if (k->filter.flags & FILTER_DRAW_SHADOW)
make_shadow_bitmap(render_priv, v, &k->filter);
}