xserver/randr
Enrico Weigelt, metux IT consult 53876f1ef1 randr: fix RRGetCrtcTransform reply length, part 2
Mixed up reply vs request. Obviously, the size substracted from reply
struct's one has to be the one of the generic reply, not generic requst :o

Background: the meaning of the length field isn't entirely intuitive.

a) the size is in 4-byte units, instead of bytes (therefore passing through
   bytes_to_int32() call)
b) it's not the total packet size, but only the *extra* payload size, ergo:
   how much is the packet longer than a xGenericReply = 8 units = 32 bytes.
   (min. packet size is 32 bytes -> length = 0)

In order to prevent those kind of coding errors ever happening again, it might
be a good idea putting that into a generic macro.

Fixes: c6f1b8a735
Fixes: 0ca5aaba50
Issue: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1797
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1845>
2025-02-27 12:18:20 +00:00
..
meson.build
randr.c
randrstr.h
randrstr_priv.h
rrcrtc.c randr: fix RRGetCrtcTransform reply length, part 2 2025-02-27 12:18:20 +00:00
rrdispatch.c
rrinfo.c
rrlease.c
rrmode.c
rrmonitor.c
rroutput.c
rrpointer.c
rrproperty.c
rrprovider.c
rrproviderproperty.c
rrscreen.c
rrsdispatch.c
rrtransform.c
rrtransform.h
rrxinerama.c