summaryrefslogtreecommitdiff
path: root/dix/dispatch.c
diff options
context:
space:
mode:
authorEamon Walsh <ewalsh@tycho.nsa.gov>2007-09-20 09:17:09 -0400
committerEamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil>2007-09-20 09:17:09 -0400
commit82f7195a628cc7ec94abc0cfe5bae2be8af443bc (patch)
tree413d734415d19c689de92443b570f85ea2b52f50 /dix/dispatch.c
parent661b1328cf992d8855552677a94d60de1d8ce942 (diff)
xace: modifications to ChangeWindowAttributes special case: separate
Receive and SetAttr. Refer to 963e69b8efc39369915e7f0c6f370ac0d5d2b60f
Diffstat (limited to 'dix/dispatch.c')
-rw-r--r--dix/dispatch.c6
1 files 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;