diff options
Diffstat (limited to 'xorg-server/Xi')
-rw-r--r-- | xorg-server/Xi/xiproperty.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/xorg-server/Xi/xiproperty.c b/xorg-server/Xi/xiproperty.c index 024dc444b..ecb326ee3 100644 --- a/xorg-server/Xi/xiproperty.c +++ b/xorg-server/Xi/xiproperty.c @@ -630,6 +630,8 @@ XIDeleteAllDeviceProperties (DeviceIntPtr device) xfree(curr_handler); curr_handler = next_handler; } + + device->properties.handlers = NULL; } @@ -643,6 +645,9 @@ XIDeleteDeviceProperty (DeviceIntPtr device, Atom property, Bool fromClient) if (prop->propertyName == property) break; + if (!prop) + return Success; + if (fromClient && !prop->deletable) return BadAccess; |