render: consolidate byte-swapping in ProcRenderSetPictureFilter()

No need for extra functions and call tables for the few trivial lines.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
Enrico Weigelt, metux IT consult
2025-09-08 16:49:15 +02:00
committed by Enrico Weigelt
parent 0c981140cf
commit 4d41eaa043

View File

@@ -98,7 +98,6 @@ static int ProcRenderCreateConicalGradient(ClientPtr pClient);
static int ProcRenderDispatch(ClientPtr pClient);
static int SProcRenderSetPictureFilter(ClientPtr pClient);
static int SProcRenderAddTraps(ClientPtr pClient);
static int SProcRenderCreateSolidFill(ClientPtr pClient);
static int SProcRenderCreateLinearGradient(ClientPtr pClient);
@@ -176,7 +175,7 @@ int (*SProcRenderVector[RenderNumberRequests]) (ClientPtr) = {
ProcRenderCreateCursor,
ProcRenderSetPictureTransform,
ProcRenderQueryFilters,
SProcRenderSetPictureFilter,
ProcRenderSetPictureFilter,
ProcRenderCreateAnimCursor,
SProcRenderAddTraps,
SProcRenderCreateSolidFill,
@@ -1688,16 +1687,14 @@ ProcRenderQueryFilters(ClientPtr client)
}
static int
SingleRenderSetPictureFilter(ClientPtr client)
SingleRenderSetPictureFilter(ClientPtr client, xRenderSetPictureFilterReq *stuff)
{
REQUEST(xRenderSetPictureFilterReq);
PicturePtr pPicture;
int result;
xFixed *params;
int nparams;
char *name;
REQUEST_AT_LEAST_SIZE(xRenderSetPictureFilterReq);
VERIFY_PICTURE(pPicture, stuff->picture, client, DixSetAttrAccess);
name = (char *) (stuff + 1);
params = (xFixed *) (name + pad_to_int32(stuff->nbytes));
@@ -1938,17 +1935,6 @@ ProcRenderDispatch(ClientPtr client)
return BadRequest;
}
static int _X_COLD
SProcRenderSetPictureFilter(ClientPtr client)
{
REQUEST(xRenderSetPictureFilterReq);
REQUEST_AT_LEAST_SIZE(xRenderSetPictureFilterReq);
swapl(&stuff->picture);
swaps(&stuff->nbytes);
return ProcRenderSetPictureFilter(client);
}
static int _X_COLD
SProcRenderAddTraps(ClientPtr client)
{
@@ -2196,19 +2182,16 @@ PanoramiXRenderSetPictureTransform(ClientPtr client, xRenderSetPictureTransformR
}
static int
PanoramiXRenderSetPictureFilter(ClientPtr client)
PanoramiXRenderSetPictureFilter(ClientPtr client, xRenderSetPictureFilterReq *stuff)
{
REQUEST(xRenderSetPictureFilterReq);
int result = Success;
PanoramiXRes *pict;
REQUEST_AT_LEAST_SIZE(xRenderSetPictureFilterReq);
VERIFY_XIN_PICTURE(pict, stuff->picture, client, DixWriteAccess);
XINERAMA_FOR_EACH_SCREEN_BACKWARD({
stuff->picture = pict->info[walkScreenIdx].id;
result = SingleRenderSetPictureFilter(client);
result = SingleRenderSetPictureFilter(client, stuff);
if (result != Success)
break;
});
@@ -3093,11 +3076,19 @@ ProcRenderSetPictureTransform(ClientPtr client)
static int
ProcRenderSetPictureFilter(ClientPtr client)
{
REQUEST(xRenderSetPictureFilterReq);
REQUEST_AT_LEAST_SIZE(xRenderSetPictureFilterReq);
if (client->swapped) {
swapl(&stuff->picture);
swaps(&stuff->nbytes);
}
#ifdef XINERAMA
return (usePanoramiX ? PanoramiXRenderSetPictureFilter(client)
: SingleRenderSetPictureFilter(client));
return (usePanoramiX ? PanoramiXRenderSetPictureFilter(client, stuff)
: SingleRenderSetPictureFilter(client, stuff));
#else
return SingleRenderSetPictureFilter(client);
return SingleRenderSetPictureFilter(client, stuff);
#endif
}