diff options
author | marha <marha@users.sourceforge.net> | 2013-09-06 13:39:40 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2013-09-06 13:39:40 +0200 |
commit | d53900c52abc2402f978b72278712e4bcdbde9f2 (patch) | |
tree | 689cedc44df148a96d68ef460cff6b1756f096b6 /xorg-server/dix/dispatch.c | |
parent | 36eb733ed5aaaeaefc49c8894bf213d16b58d242 (diff) | |
parent | 2414a1de3cc17f438219f8f2a58b530d33e99a5e (diff) | |
download | vcxsrv-d53900c52abc2402f978b72278712e4bcdbde9f2.tar.gz vcxsrv-d53900c52abc2402f978b72278712e4bcdbde9f2.tar.bz2 vcxsrv-d53900c52abc2402f978b72278712e4bcdbde9f2.zip |
Merge remote-tracking branch 'origin/released'
* origin/released:
mesa pixman xserver xkeyboard-config
Conflicts:
xorg-server/dix/dispatch.c
Diffstat (limited to 'xorg-server/dix/dispatch.c')
-rwxr-xr-x[-rw-r--r--] | xorg-server/dix/dispatch.c | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/xorg-server/dix/dispatch.c b/xorg-server/dix/dispatch.c index d3aa7cfec..f37b5d71f 100644..100755 --- a/xorg-server/dix/dispatch.c +++ b/xorg-server/dix/dispatch.c @@ -2908,18 +2908,25 @@ ProcCreateCursor(ClientPtr client) return rc;
}
- rc = dixLookupResourceByType((pointer *) &msk, stuff->mask, RT_PIXMAP,
- client, DixReadAccess);
- if (rc != Success) {
- if (stuff->mask != None) {
+ if (src->drawable.depth != 1)
+ return (BadMatch);
+
+ /* Find and validate cursor mask pixmap, if one is provided */
+ if (stuff->mask != None) {
+ rc = dixLookupResourceByType((pointer *) &msk, stuff->mask, RT_PIXMAP,
+ client, DixReadAccess);
+ if (rc != Success) {
client->errorValue = stuff->mask;
return rc;
}
+
+ if (src->drawable.width != msk->drawable.width
+ || src->drawable.height != msk->drawable.height
+ || src->drawable.depth != 1 || msk->drawable.depth != 1)
+ return BadMatch;
}
- else if (src->drawable.width != msk->drawable.width
- || src->drawable.height != msk->drawable.height
- || src->drawable.depth != 1 || msk->drawable.depth != 1)
- return BadMatch;
+ else
+ msk = NULL;
width = src->drawable.width;
height = src->drawable.height;
|