Xext/vidmode: add byte-swapping in various fields

Co-Authored-by: Claude Code <noreply@anthropic.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2181>
This commit is contained in:
Peter Hutterer 2026-04-17 14:41:08 +10:00 committed by Marge Bot
parent 6c51a0f905
commit 3ceb0e82e5

View file

@ -1737,6 +1737,7 @@ SProcVidModeAddModeLine(ClientPtr client)
if (ver < 2) {
REQUEST_AT_LEAST_SIZE(xXF86OldVidModeAddModeLineReq);
swapl(&oldstuff->screen);
swapl(&oldstuff->dotclock);
swaps(&oldstuff->hdisplay);
swaps(&oldstuff->hsyncstart);
swaps(&oldstuff->hsyncend);
@ -1747,11 +1748,22 @@ SProcVidModeAddModeLine(ClientPtr client)
swaps(&oldstuff->vtotal);
swapl(&oldstuff->flags);
swapl(&oldstuff->privsize);
swapl(&oldstuff->after_dotclock);
swaps(&oldstuff->after_hdisplay);
swaps(&oldstuff->after_hsyncstart);
swaps(&oldstuff->after_hsyncend);
swaps(&oldstuff->after_htotal);
swaps(&oldstuff->after_vdisplay);
swaps(&oldstuff->after_vsyncstart);
swaps(&oldstuff->after_vsyncend);
swaps(&oldstuff->after_vtotal);
swapl(&oldstuff->after_flags);
SwapRestL(oldstuff);
}
else {
REQUEST_AT_LEAST_SIZE(xXF86VidModeAddModeLineReq);
swapl(&stuff->screen);
swapl(&stuff->dotclock);
swaps(&stuff->hdisplay);
swaps(&stuff->hsyncstart);
swaps(&stuff->hsyncend);
@ -1763,6 +1775,17 @@ SProcVidModeAddModeLine(ClientPtr client)
swaps(&stuff->vtotal);
swapl(&stuff->flags);
swapl(&stuff->privsize);
swapl(&stuff->after_dotclock);
swaps(&stuff->after_hdisplay);
swaps(&stuff->after_hsyncstart);
swaps(&stuff->after_hsyncend);
swaps(&stuff->after_htotal);
swaps(&stuff->after_hskew);
swaps(&stuff->after_vdisplay);
swaps(&stuff->after_vsyncstart);
swaps(&stuff->after_vsyncend);
swaps(&stuff->after_vtotal);
swapl(&stuff->after_flags);
SwapRestL(stuff);
}
return ProcVidModeAddModeLine(client);
@ -1780,6 +1803,7 @@ SProcVidModeDeleteModeLine(ClientPtr client)
if (ver < 2) {
REQUEST_AT_LEAST_SIZE(xXF86OldVidModeDeleteModeLineReq);
swapl(&oldstuff->screen);
swapl(&oldstuff->dotclock);
swaps(&oldstuff->hdisplay);
swaps(&oldstuff->hsyncstart);
swaps(&oldstuff->hsyncend);
@ -1795,6 +1819,7 @@ SProcVidModeDeleteModeLine(ClientPtr client)
else {
REQUEST_AT_LEAST_SIZE(xXF86VidModeDeleteModeLineReq);
swapl(&stuff->screen);
swapl(&stuff->dotclock);
swaps(&stuff->hdisplay);
swaps(&stuff->hsyncstart);
swaps(&stuff->hsyncend);
@ -1866,6 +1891,7 @@ SProcVidModeValidateModeLine(ClientPtr client)
if (ver < 2) {
REQUEST_AT_LEAST_SIZE(xXF86OldVidModeValidateModeLineReq);
swapl(&oldstuff->screen);
swapl(&oldstuff->dotclock);
swaps(&oldstuff->hdisplay);
swaps(&oldstuff->hsyncstart);
swaps(&oldstuff->hsyncend);
@ -1881,6 +1907,7 @@ SProcVidModeValidateModeLine(ClientPtr client)
else {
REQUEST_AT_LEAST_SIZE(xXF86VidModeValidateModeLineReq);
swapl(&stuff->screen);
swapl(&stuff->dotclock);
swaps(&stuff->hdisplay);
swaps(&stuff->hsyncstart);
swaps(&stuff->hsyncend);