aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/dix/devices.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2009-10-21 19:07:36 +0000
committermarha <marha@users.sourceforge.net>2009-10-21 19:07:36 +0000
commit1f876171067c04fc21fccd5a3051f982fd85c0f0 (patch)
tree1f7883e3e5f5ef5cd401ee7c70dd5e679efd0615 /xorg-server/dix/devices.c
parent7687adcc34c9fc43d526f30b1cf2039b0af48841 (diff)
downloadvcxsrv-1f876171067c04fc21fccd5a3051f982fd85c0f0.tar.gz
vcxsrv-1f876171067c04fc21fccd5a3051f982fd85c0f0.tar.bz2
vcxsrv-1f876171067c04fc21fccd5a3051f982fd85c0f0.zip
Updated to xorg-server-1.7.99.1
Diffstat (limited to 'xorg-server/dix/devices.c')
-rw-r--r--xorg-server/dix/devices.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/xorg-server/dix/devices.c b/xorg-server/dix/devices.c
index e86e606c0..6a7907399 100644
--- a/xorg-server/dix/devices.c
+++ b/xorg-server/dix/devices.c
@@ -2221,12 +2221,15 @@ ProcQueryKeymap(ClientPtr client)
rep.length = 2;
rc = XaceHook(XACE_DEVICE_ACCESS, client, keybd, DixReadAccess);
- if (rc != Success)
+ if (rc != Success && rc != BadAccess)
return rc;
for (i = 0; i<32; i++)
rep.map[i] = down[i];
+ if (rc == BadAccess)
+ memset(rep.map, 0, 32);
+
WriteReplyToClient(client, sizeof(xQueryKeymapReply), &rep);
return Success;