From 82f7195a628cc7ec94abc0cfe5bae2be8af443bc Mon Sep 17 00:00:00 2001 From: Eamon Walsh Date: Thu, 20 Sep 2007 09:17:09 -0400 Subject: [PATCH] xace: modifications to ChangeWindowAttributes special case: separate Receive and SetAttr. Refer to 963e69b8efc39369915e7f0c6f370ac0d5d2b60f --- dix/dispatch.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dix/dispatch.c b/dix/dispatch.c index 8c68e5567..952ef6004 100644 --- a/dix/dispatch.c +++ b/dix/dispatch.c @@ -571,11 +571,11 @@ ProcChangeWindowAttributes(ClientPtr client) WindowPtr pWin; REQUEST(xChangeWindowAttributesReq); int result, len, rc; - Mask access_mode = DixSetAttrAccess; + Mask access_mode = 0; REQUEST_AT_LEAST_SIZE(xChangeWindowAttributesReq); - if (stuff->valueMask == CWEventMask) - access_mode = DixReceiveAccess; + access_mode |= (stuff->valueMask & CWEventMask) ? DixReceiveAccess : 0; + access_mode |= (stuff->valueMask & ~CWEventMask) ? DixSetAttrAccess : 0; rc = dixLookupWindow(&pWin, stuff->window, client, access_mode); if (rc != Success) return rc;