From 75d5d22fb790d856809a9dd896ffc22a268d1d96 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Tue, 14 Nov 2017 15:13:02 -0500 Subject: [PATCH] glx: Use __glXSendError instead of open-coding it This also fixes a bug, the error path through MakeCurrent didn't translate the error code by the extension's error base. Signed-off-by: Adam Jackson Reviewed-by: Ian Romanick --- src/glx/glxcmds.c | 10 +--------- src/glx/glxcurrent.c | 20 +++----------------- 2 files changed, 4 insertions(+), 26 deletions(-) diff --git a/src/glx/glxcmds.c b/src/glx/glxcmds.c index bc93d625106..eee45d962d7 100644 --- a/src/glx/glxcmds.c +++ b/src/glx/glxcmds.c @@ -392,15 +392,7 @@ glXCreateContext(Display * dpy, XVisualInfo * vis, config = glx_config_find_visual(psc->visuals, vis->visualid); if (config == NULL) { - xError error; - - error.errorCode = BadValue; - error.resourceID = vis->visualid; - error.sequenceNumber = dpy->request; - error.type = X_Error; - error.majorCode = __glXSetupForCommand(dpy); - error.minorCode = X_GLXCreateContext; - _XError(dpy, &error); + __glXSendError(dpy, BadValue, vis->visualid, X_GLXCreateContext, True); return None; } diff --git a/src/glx/glxcurrent.c b/src/glx/glxcurrent.c index d1193265f90..fd04929b89f 100644 --- a/src/glx/glxcurrent.c +++ b/src/glx/glxcurrent.c @@ -36,8 +36,8 @@ #include #include "glxclient.h" - #include "glapi.h" +#include "glx_error.h" /* ** We setup some dummy structures here so that the API can be used @@ -165,21 +165,6 @@ glXGetCurrentDrawable(void) return gc->currentDrawable; } -static void -__glXGenerateError(Display * dpy, XID resource, - BYTE errorCode, CARD16 minorCode) -{ - xError error; - - error.errorCode = errorCode; - error.resourceID = resource; - error.sequenceNumber = dpy->request; - error.type = X_Error; - error.majorCode = __glXSetupForCommand(dpy); - error.minorCode = minorCode; - _XError(dpy, &error); -} - /** * Make a particular context current. * @@ -228,7 +213,8 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw, if (gc->vtable->bind(gc, oldGC, draw, read) != Success) { __glXSetCurrentContextNull(); __glXUnlock(); - __glXGenerateError(dpy, None, GLXBadContext, X_GLXMakeContextCurrent); + __glXSendError(dpy, GLXBadContext, None, X_GLXMakeContextCurrent, + False); return GL_FALSE; } -- 2.30.2