diff options
-rw-r--r-- | Xext/shape.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/Xext/shape.c b/Xext/shape.c index 928eeee31..0f49f7332 100644 --- a/Xext/shape.c +++ b/Xext/shape.c @@ -323,7 +323,7 @@ ProcShapeRectangles (client) REQUEST_AT_LEAST_SIZE (xShapeRectanglesReq); UpdateCurrentTime(); - rc = dixLookupWindow(&pWin, stuff->dest, client, DixUnknownAccess); + rc = dixLookupWindow(&pWin, stuff->dest, client, DixSetAttrAccess); if (rc != Success) return rc; switch (stuff->destKind) { @@ -423,7 +423,7 @@ ProcShapeMask (client) REQUEST_SIZE_MATCH (xShapeMaskReq); UpdateCurrentTime(); - rc = dixLookupWindow(&pWin, stuff->dest, client, DixWriteAccess); + rc = dixLookupWindow(&pWin, stuff->dest, client, DixSetAttrAccess); if (rc != Success) return rc; switch (stuff->destKind) { @@ -444,10 +444,10 @@ ProcShapeMask (client) if (stuff->src == None) srcRgn = 0; else { - pPixmap = (PixmapPtr) SecurityLookupIDByType(client, stuff->src, - RT_PIXMAP, DixReadAccess); - if (!pPixmap) - return BadPixmap; + rc = dixLookupResource((pointer *)&pPixmap, stuff->src, RT_PIXMAP, + client, DixReadAccess); + if (rc != Success) + return (rc == BadValue) ? BadPixmap : rc; if (pPixmap->drawable.pScreen != pScreen || pPixmap->drawable.depth != 1) return BadMatch; @@ -531,7 +531,7 @@ ProcShapeCombine (client) REQUEST_SIZE_MATCH (xShapeCombineReq); UpdateCurrentTime(); - rc = dixLookupWindow(&pDestWin, stuff->dest, client, DixUnknownAccess); + rc = dixLookupWindow(&pDestWin, stuff->dest, client, DixSetAttrAccess); if (rc != Success) return rc; if (!pDestWin->optional) @@ -552,7 +552,7 @@ ProcShapeCombine (client) } pScreen = pDestWin->drawable.pScreen; - rc = dixLookupWindow(&pSrcWin, stuff->src, client, DixUnknownAccess); + rc = dixLookupWindow(&pSrcWin, stuff->src, client, DixGetAttrAccess); if (rc != Success) return rc; switch (stuff->srcKind) { @@ -651,7 +651,7 @@ ProcShapeOffset (client) REQUEST_SIZE_MATCH (xShapeOffsetReq); UpdateCurrentTime(); - rc = dixLookupWindow(&pWin, stuff->dest, client, DixUnknownAccess); + rc = dixLookupWindow(&pWin, stuff->dest, client, DixSetAttrAccess); if (rc != Success) return rc; switch (stuff->destKind) { @@ -716,7 +716,7 @@ ProcShapeQueryExtents (client) RegionPtr region; REQUEST_SIZE_MATCH (xShapeQueryExtentsReq); - rc = dixLookupWindow(&pWin, stuff->window, client, DixUnknownAccess); + rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess); if (rc != Success) return rc; rep.type = X_Reply; @@ -826,7 +826,7 @@ ProcShapeSelectInput (client) int rc; REQUEST_SIZE_MATCH (xShapeSelectInputReq); - rc = dixLookupWindow(&pWin, stuff->window, client, DixWriteAccess); + rc = dixLookupWindow(&pWin, stuff->window, client, DixReceiveAccess); if (rc != Success) return rc; pHead = (ShapeEventPtr *)SecurityLookupIDByType(client, @@ -999,7 +999,7 @@ ProcShapeInputSelected (client) register int n; REQUEST_SIZE_MATCH (xShapeInputSelectedReq); - rc = dixLookupWindow(&pWin, stuff->window, client, DixUnknownAccess); + rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess); if (rc != Success) return rc; pHead = (ShapeEventPtr *) SecurityLookupIDByType(client, @@ -1041,7 +1041,7 @@ ProcShapeGetRectangles (client) register int n; REQUEST_SIZE_MATCH(xShapeGetRectanglesReq); - rc = dixLookupWindow(&pWin, stuff->window, client, DixUnknownAccess); + rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess); if (rc != Success) return rc; switch (stuff->kind) { |