X-Git-Url: https://git.libre-soc.org/?p=mesa.git;a=blobdiff_plain;f=src%2Fglx%2Fglx_error.c;h=653cbeb2d2a32a3504e1f383923e99cfe6468334;hp=d44a80ca6592ae17475c4ace69c50831f95d4b0b;hb=65b016b1469574ab2e3b4d2c2706fd96c995fa9f;hpb=6f76efa9224f6a1cbe35f419172549abafdd751e diff --git a/src/glx/glx_error.c b/src/glx/glx_error.c index d44a80ca659..653cbeb2d2a 100644 --- a/src/glx/glx_error.c +++ b/src/glx/glx_error.c @@ -35,15 +35,13 @@ #include "glx_error.h" void -__glXSendError(Display * dpy, int errorCode, unsigned long resourceID, - unsigned long minorCode, bool coreX11error) +__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 errorCode, unsigned long 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);