diff --git a/Xext/xace.c b/Xext/xace.c index 91c74d591..a3a83a20c 100644 --- a/Xext/xace.c +++ b/Xext/xace.c @@ -245,6 +245,7 @@ XaceCensorImage(ClientPtr client, /* censorRegion = imageRegion - visibleRegion */ RegionSubtract(&censorRegion, &imageRegion, pVisibleRegion); + RegionTranslate(&censorRegion, -x, -y); nRects = RegionNumRects(&censorRegion); if (nRects > 0) { /* we have something to censor */ GCPtr pScratchGC = NULL; @@ -265,7 +266,7 @@ XaceCensorImage(ClientPtr client, } for (pBox = RegionRects(&censorRegion), i = 0; i < nRects; i++, pBox++) { pRects[i].x = pBox->x1; - pRects[i].y = pBox->y1 - imageBox.y1; + pRects[i].y = pBox->y1; pRects[i].width = pBox->x2 - pBox->x1; pRects[i].height = pBox->y2 - pBox->y1; }