diff options
Diffstat (limited to 'render/impedpict.c')
-rw-r--r-- | render/impedpict.c | 8 |
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; |