mirror of
https://gitlab.freedesktop.org/xorg/proto/xorgproto.git
synced 2026-05-07 04:58:14 +02:00
Unbreak protocol ABI for XIAllowEvents - inputproto 2.1.99.6
XIAllowEvents was extended with touchid and grab_window in
2ea2f99f4f. This extended the size of
the request from 12 to 20 but also broke the ABI. Older server
match the request size exactly, so compiling libXi 1.5 against
inputproto 2.2 and then running it against a pre-XI 2.2 server causes a
BadLength for any XIAllowEvent request.
Add a new request for the new data.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
parent
217afacda0
commit
5e18f74e24
2 changed files with 18 additions and 3 deletions
19
XI2proto.h
19
XI2proto.h
|
|
@ -639,6 +639,21 @@ typedef struct {
|
|||
/**
|
||||
* Allow or replay events on the specified grabbed device.
|
||||
*/
|
||||
typedef struct {
|
||||
uint8_t reqType;
|
||||
uint8_t ReqType; /**< Always ::X_XIAllowEvents */
|
||||
uint16_t length; /**< Length in 4 byte units */
|
||||
Time time;
|
||||
uint16_t deviceid;
|
||||
uint8_t mode;
|
||||
uint8_t pad;
|
||||
} xXIAllowEventsReq;
|
||||
#define sz_xXIAllowEventsReq 12
|
||||
|
||||
/**
|
||||
* Allow or replay events on the specified grabbed device.
|
||||
* Since XI 2.2
|
||||
*/
|
||||
typedef struct {
|
||||
uint8_t reqType;
|
||||
uint8_t ReqType; /**< Always ::X_XIAllowEvents */
|
||||
|
|
@ -649,8 +664,8 @@ typedef struct {
|
|||
uint8_t pad;
|
||||
uint32_t touchid; /**< Since XI 2.2 */
|
||||
Window grab_window; /**< Since XI 2.2 */
|
||||
} xXIAllowEventsReq;
|
||||
#define sz_xXIAllowEventsReq 20 /**< Was 12 before XI 2.2 */
|
||||
} xXI2_2AllowEventsReq;
|
||||
#define sz_xXI2_2AllowEventsReq 20
|
||||
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
AC_PREREQ([2.60])
|
||||
AC_INIT([InputProto], [2.1.99.5], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
|
||||
AC_INIT([InputProto], [2.1.99.6], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
|
||||
AM_INIT_AUTOMAKE([foreign dist-bzip2])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue