| 380 | |
| 381 | |
| 382 | xcb_glx_query_version_reply_t * |
| 383 | xcb_glx_query_version_reply(xcb_connection_t *conn, |
| 384 | xcb_glx_query_version_cookie_t cookie, xcb_generic_error_t **error) |
| 385 | { |
| 386 | xcb_glx_query_version_reply_t *reply = NULL; |
| 387 | |
| 388 | TRY(); |
| 389 | |
| 390 | if(!fconfig.fakeXCB || IS_EXCLUDED(XCBCONNHASH.getX11Display(conn))) |
| 391 | return _xcb_glx_query_version_reply(conn, cookie, error); |
| 392 | |
| 393 | ///////////////////////////////////////////////////////////////////////////// |
| 394 | OPENTRACE(xcb_glx_query_version_reply); PRARGX(conn); STARTTRACE(); |
| 395 | ///////////////////////////////////////////////////////////////////////////// |
| 396 | |
| 397 | xcb_connection_t *conn3D = (fconfig.egl ? conn : _XGetXCBConnection(DPY3D)); |
| 398 | if(conn3D != NULL) |
| 399 | reply = _xcb_glx_query_version_reply(conn3D, cookie, error); |
| 400 | |
| 401 | ///////////////////////////////////////////////////////////////////////////// |
| 402 | STOPTRACE(); |
| 403 | if(error) |
| 404 | { |
| 405 | if(*error) PRARGERR(*error) else PRARGX(*error); |
| 406 | } |
| 407 | else PRARGX(error); |
| 408 | if(reply) |
| 409 | { |
| 410 | PRARGI(reply->major_version); PRARGI(reply->minor_version); |
| 411 | } |
| 412 | else PRARGX(reply); |
| 413 | CLOSETRACE(); |
| 414 | ///////////////////////////////////////////////////////////////////////////// |
| 415 | |
| 416 | CATCH(); |
| 417 | |
| 418 | return reply; |
| 419 | } |
| 420 | |
| 421 | |
| 422 | // The following functions are interposed so that VirtualGL can detect window |
no test coverage detected