x11: Improve XGenericEventCookie data allocation
https://bugzilla.gnome.org/show_bug.cgi?id=654656 Clutter may be used together with GTK+, which indirectly may use XInput2 too, so the cookie data must persist when both are handling events. What happens now in a nutshell is, Clutter is only guaranteed to allocate the cookie itself after XNextEvent(), and only frees the cookie if its XGetEventData() call allocated the cookie data. The X[Get|Free]EventData() calls happen now in clutter-event-x11.c as hypothetically different event translators could also handle other set of X Generic Events, or other libraries handling events for that matter.
Showing with 46 additions and 13 deletions