libxcb thinks that it knows about all device class types sent by the X
server XInput extension. With the addition of touchpad gestures in
XInput 2.4 and X server 21.1 this is no longer the case and libxcb fails
horribly by thinking that the protocol was malformed.
The X server currently has a workaround, but it would not address the
following situation:
- there are multiple modules within the same X client (e.g. part of the
application uses Qt, another part talks to X server via another library)
- both of the modules talk to XI
- at least one module requests for XI 2.4 protocol support.
The request for XI 2.4 disables the workaround on the X server and Qt
side would crash horribly.
This bug is being fixed upstream in these MRs:
https://gitlab.freedesktop.org/xorg/proto/xcbproto/-/merge_requests/23https://gitlab.freedesktop.org/xorg/lib/libxcb/-/merge_requests/20
Change-Id: Idf345271340031152b512ef59f619313be5ec226
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>