mirror of
https://gitlab.freedesktop.org/xorg/xserver.git
synced 2026-02-14 23:50:30 +01:00
dix: make FreeGrab() NULL tolerant
Allow NULL parameters to be passed to FreeGrab(), so callers don't all
need to check on their own anymore.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
(cherry picked from commit 48cee2fd22)
This commit is contained in:
parent
8cd50a21e7
commit
c28a87053b
4 changed files with 9 additions and 15 deletions
|
|
@ -1033,8 +1033,7 @@ CloseDevice(DeviceIntPtr dev)
|
|||
}
|
||||
}
|
||||
|
||||
if (dev->deviceGrab.grab)
|
||||
FreeGrab(dev->deviceGrab.grab);
|
||||
FreeGrab(dev->deviceGrab.grab);
|
||||
free(dev->deviceGrab.sync.event);
|
||||
free(dev->config_info); /* Allocated in xf86ActivateDevice. */
|
||||
free(dev->last.scroll);
|
||||
|
|
|
|||
12
dix/events.c
12
dix/events.c
|
|
@ -1525,8 +1525,7 @@ UpdateTouchesForGrab(DeviceIntPtr mouse)
|
|||
listener->window = grab->window;
|
||||
listener->state = TOUCH_LISTENER_IS_OWNER;
|
||||
|
||||
if (listener->grab)
|
||||
FreeGrab(listener->grab);
|
||||
FreeGrab(listener->grab);
|
||||
listener->grab = AllocGrab(grab);
|
||||
}
|
||||
}
|
||||
|
|
@ -1566,8 +1565,7 @@ UpdateGesturesForGrab(DeviceIntPtr mouse)
|
|||
listener->listener = grab->resource;
|
||||
listener->window = grab->window;
|
||||
|
||||
if (listener->grab)
|
||||
FreeGrab(listener->grab);
|
||||
FreeGrab(listener->grab);
|
||||
listener->grab = AllocGrab(grab);
|
||||
}
|
||||
}
|
||||
|
|
@ -1625,8 +1623,7 @@ ActivatePointerGrab(DeviceIntPtr mouse, GrabPtr grab,
|
|||
UpdateGesturesForGrab(mouse);
|
||||
CheckGrabForSyncs(mouse, (Bool) grab->pointerMode,
|
||||
(Bool) grab->keyboardMode);
|
||||
if (oldgrab)
|
||||
FreeGrab(oldgrab);
|
||||
FreeGrab(oldgrab);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -1745,8 +1742,7 @@ ActivateKeyboardGrab(DeviceIntPtr keybd, GrabPtr grab, TimeStamp time,
|
|||
grabinfo->implicitGrab = passive & ImplicitGrabMask;
|
||||
CheckGrabForSyncs(keybd, (Bool) grab->keyboardMode,
|
||||
(Bool) grab->pointerMode);
|
||||
if (oldgrab)
|
||||
FreeGrab(oldgrab);
|
||||
FreeGrab(oldgrab);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -114,10 +114,8 @@ void
|
|||
GestureEndGesture(GestureInfoPtr gi)
|
||||
{
|
||||
if (gi->has_listener) {
|
||||
if (gi->listener.grab) {
|
||||
FreeGrab(gi->listener.grab);
|
||||
gi->listener.grab = NULL;
|
||||
}
|
||||
FreeGrab(gi->listener.grab);
|
||||
gi->listener.grab = NULL;
|
||||
gi->listener.listener = 0;
|
||||
gi->has_listener = FALSE;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -254,7 +254,8 @@ CreateGrab(int client, DeviceIntPtr device, DeviceIntPtr modDevice,
|
|||
void
|
||||
FreeGrab(GrabPtr pGrab)
|
||||
{
|
||||
BUG_RETURN(!pGrab);
|
||||
if (!pGrab)
|
||||
return;
|
||||
|
||||
free(pGrab->modifiersDetail.pMask);
|
||||
free(pGrab->detail.pMask);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue