glx: DoQueryContext(): explicitly use reply buf type defined by spec

The spec defines the reply as array of "CARD32", not "int". The latter
just accidentially has the same type (for now :o), but it's *semantically*
incorrect. Using CARD32 instead.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1665>
This commit is contained in:
Enrico Weigelt, metux IT consult 2024-08-28 13:31:35 +02:00 committed by Marge Bot
parent 0a7763bfce
commit ef77c486d5

View File

@ -1659,7 +1659,7 @@ DoQueryContext(__GLXclientState * cl, GLXContextID gcId)
{
ClientPtr client = cl->client;
__GLXcontext *ctx;
int sendBuf[GLX_QUERY_NPROPS * 2];
CARD32 sendBuf[GLX_QUERY_NPROPS * 2];
int nReplyBytes;
int err;
@ -1694,7 +1694,7 @@ DoQueryContext(__GLXclientState * cl, GLXContextID gcId)
__GLX_SWAP_INT(&reply.length);
__GLX_SWAP_INT(&reply.n);
WriteToClient(client, sizeof(xGLXQueryContextInfoEXTReply), &reply);
__GLX_SWAP_INT_ARRAY((int *) sendBuf, length);
__GLX_SWAP_INT_ARRAY(sendBuf, length);
WriteToClient(client, length << 2, sendBuf);
}
else {