summaryrefslogtreecommitdiff
path: root/render/impedpict.c
diff options
context:
space:
mode:
Diffstat (limited to 'render/impedpict.c')
-rw-r--r--render/impedpict.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/render/impedpict.c b/render/impedpict.c
index aab47a181..149cc0e4f 100644
--- a/render/impedpict.c
+++ b/render/impedpict.c
@@ -207,7 +207,13 @@ impedChangeOnePicture(PicturePtr pPicture, PicturePtr pChild, int index, Mask ma
break;
case CPClipMask:
pChild->clientClipType = pPicture->clientClipType;
- pChild->clientClip = pPicture->clientClip;
+ if (pPicture->clientClipType == CT_REGION) {
+ RegionPtr pReg;
+ pReg = RegionCreate(NULL, 1);
+ RegionCopy(pReg, (RegionPtr)pPicture->clientClip);
+ pChild->clientClip = (void *)pReg;
+ } else
+ pChild->clientClip = pPicture->clientClip;
break;
case CPGraphicsExposure:
pChild->graphicsExposures = pPicture->graphicsExposures;