X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fglx%2Fglx_error.c;h=653cbeb2d2a32a3504e1f383923e99cfe6468334;hb=d415748955034b659c8b577adc727b1fd39948b8;hp=0855c35951a4e00923416f789c8b70f270fac913;hpb=b1ffb3335f629ed43bde44cee789dc9cdb35c306;p=mesa.git diff --git a/src/glx/glx_error.c b/src/glx/glx_error.c index 0855c35951a..653cbeb2d2a 100644 --- a/src/glx/glx_error.c +++ b/src/glx/glx_error.c @@ -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); LockDisplay(dpy); @@ -59,7 +57,26 @@ __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); + + UnlockDisplay(dpy); +} + +void +__glXSendErrorForXcb(Display * dpy, const xcb_generic_error_t *err) +{ + xError error; + + LockDisplay(dpy); + + error.type = X_Error; + error.errorCode = err->error_code; + error.sequenceNumber = err->sequence; + error.resourceID = err->resource_id; + error.minorCode = err->minor_code; + error.majorCode = err->major_code; _XError(dpy, &error);