[PULL unreviewed] touch fixes for #56578

Keith Packard keithp at keithp.com
Thu May 23 09:41:40 PDT 2013

Peter Hutterer <peter.hutterer at who-t.net> writes:

> Still unreviewed, don't expect them to get reviewed or even understood, so
> can we please merge this so it gets some testing outside of my box and the
> few that see the bug. This fixes a rather bad bug where we just read/write
> to a dangling pointer on almost every touch event.

Agreed. I've read through them a couple of times and still don't feel
like I understand the code well enough to review it myself.

> Peter Hutterer (28):
>       Xi: not having an ownership mask does not mean automatic acceptance
>       dix: don't prepend an activated passive grab to the listeners
>       Xi: if we delivered a TouchEnd to a passive grab, end it
>       Xi: update the core listener state if we delivered the touch event
>       Xi: fix lookup in ActivateEarlyAccept
>       Xi: if a passive async grab is activated from an emulated touch, accept
>       Xi: save state for early acceptance
>       Xi: when punting to a new owner, always create TouchEnd events
>       Xi: use public.processInputProc to replay the touch history
>       Xi: Don't emit a TouchEnd event to a frozen device
>       dix: move EmitTouchEnd to touch.c
>       dix: XAllowEvents() on a touch event means accepting it
>       dix: invert a loop condition
>       dix: use a tmp variable for the to-be-removed touch listener
>       dix: drop DeviceIntRec's activeGrab struct
>       dix: use a temporary variable for listeners[0]
>       dix: freeing a null grab is a bug, complain if doing so
>       dix: AllocGrab can copy if an argument is passed in
>       dix: always copy grabs, don't reference them
>       dix: remove all listeners when freeing a touch
>       Move TouchListenerGone call to CloseDownClient
>       Xi: check for HAS_ACCEPTED only for grab listeners
>       dix: free the old grab when activating a new grab
>       dix: fix cursor refcounting
>       Xi: fix warning - remove unused 'rc'
>       dix: devices must have valuators before touch is initialized
>       dix: call UpdateDeviceState() for emulated TouchEndEvents
>       Abstract cursor refcounting

   891123c..2ccb9fb  master -> master

keith.packard at intel.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 827 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg-devel/attachments/20130523/ccf53386/attachment-0001.pgp>

More information about the xorg-devel mailing list