glx: Don't use current context in __glXSendError
authorMichel Dänzer <michel.daenzer@amd.com>
Tue, 16 Aug 2016 06:35:44 +0000 (15:35 +0900)
committerMichel Dänzer <michel@daenzer.net>
Wed, 17 Aug 2016 08:16:34 +0000 (17:16 +0900)
There's no guarantee that there is one, and we don't need one anyway.

Fixes piglit tests:

glx@glx-fbconfig-bad
glx@glx_ext_import_context@import context, multi process
glx@glx_ext_import_context@import context, single process

Fixes: 2e3f067458e4 ("glx: fix error code when there is no context bound")
Cc: "11.2" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
src/glx/glx_error.c

index e098682dd75653d6f79133a40f6f3335af7f1a27..653cbeb2d2a32a3504e1f383923e99cfe6468334 100644 (file)
@@ -39,11 +39,9 @@ __glXSendError(Display * dpy, int_fast8_t errorCode, uint_fast32_t resourceID,
                uint_fast16_t minorCode, bool coreX11error)
 {
    struct glx_display *glx_dpy = __glXInitialize(dpy);
-   struct glx_context *gc = __glXGetCurrentContext();
    xError error;
 
    assert(glx_dpy);
-   assert(gc != &dummyContext);
 
    LockDisplay(dpy);
 
@@ -59,7 +57,7 @@ __glXSendError(Display * dpy, int_fast8_t errorCode, uint_fast32_t resourceID,
    error.sequenceNumber = dpy->request;
    error.resourceID = resourceID;
    error.minorCode = minorCode;
-   error.majorCode = gc ? gc->majorOpcode : 0;
+   error.majorCode = glx_dpy->majorOpcode;
 
    _XError(dpy, &error);