diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2009-09-24 14:05:52 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2009-09-25 08:16:37 +1000 |
commit | 6ee796e9bb4e46782b50a69c7b4fa5b49576f139 (patch) | |
tree | a91e5dd03965f82543ae3d94bb301e24844ebbe5 | |
parent | 3b5bbb149d4c932d9624336f5cbe9fe71c87bea3 (diff) |
Xi: fix length calculation for ValuatorState in QueryDeviceState reply.
The length field needs to include the bytes required for the valuators
(INT32) as well.
The reply length has the right value and since the valuator state is always
last, clients didn't notice the wrong offset.
Tested-by: Thomas Jaeger
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r-- | Xi/queryst.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Xi/queryst.c b/Xi/queryst.c index 60ec32ec9..2ba1edb63 100644 --- a/Xi/queryst.c +++ b/Xi/queryst.c @@ -147,7 +147,7 @@ ProcXQueryDeviceState(ClientPtr client) if (v != NULL) { tv = (xValuatorState *) buf; tv->class = ValuatorClass; - tv->length = sizeof(xValuatorState); + tv->length = sizeof(xValuatorState) + v->numAxes * 4; tv->num_valuators = v->numAxes; tv->mode = v->mode; buf += sizeof(xValuatorState); |