diff --git a/Xi/xigrabdev.c b/Xi/xigrabdev.c index e1b43f695..5b55fe9e4 100644 --- a/Xi/xigrabdev.c +++ b/Xi/xigrabdev.c @@ -81,8 +81,10 @@ ProcXIGrabDevice(ClientPtr client) if (ret != Success) return ret; - if (!dev->enabled) - return AlreadyGrabbed; + if (!dev->enabled) { + status = XIAlreadyGrabbed; + goto reply; + } if (!IsMaster(dev)) stuff->paired_device_mode = GrabModeAsync; @@ -122,6 +124,7 @@ ProcXIGrabDevice(ClientPtr client) if (ret != Success) return ret; +reply: rep = (xXIGrabDeviceReply) { .repType = X_Reply, .RepType = X_XIGrabDevice,