(!1665) 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>
This commit is contained in:
Enrico Weigelt, metux IT consult 2024-08-28 13:31:35 +02:00
parent 3e0e188960
commit 02d16aa845

View File

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