summaryrefslogtreecommitdiff
path: root/miext/cw/cw_render.c
diff options
context:
space:
mode:
Diffstat (limited to 'miext/cw/cw_render.c')
-rw-r--r--miext/cw/cw_render.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/miext/cw/cw_render.c b/miext/cw/cw_render.c
index 01e2bc468..f7e361496 100644
--- a/miext/cw/cw_render.c
+++ b/miext/cw/cw_render.c
@@ -207,8 +207,22 @@ cwValidatePicture (PicturePtr pPicture,
pBackingPicture = pPicturePrivate->pBackingPicture;
+ /*
+ * Always copy transform and filters because there's no
+ * indication of when they've changed
+ */
SetPictureTransform(pBackingPicture, pPicture->transform);
- /* XXX Set filters */
+
+ if (pBackingPicture->filter != pPicture->filter ||
+ pPicture->filter_nparams > 0)
+ {
+ char *filter = PictureGetFilterName (pPicture->filter);
+
+ SetPictureFilter(pBackingPicture,
+ filter, strlen (filter),
+ pPicture->filter_params,
+ pPicture->filter_nparams);
+ }
pPicturePrivate->stateChanges |= mask;