From 6c5402bccdc83173f645de34830a45cbb52436a4 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 5 Jul 2004 22:40:54 +0000 Subject: Another "if it ain't broke, don't fix it" moment. Revert some more code in _glapi_set_dispatch to its 1.74 form. This fixes a "problem" with buggy apps that make GL calls with no bound GL context (i.e., Enemy Territory during shut-down). --- src/mesa/glapi/glapi.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/src/mesa/glapi/glapi.c b/src/mesa/glapi/glapi.c index 4c005a9d0c..ecdf5306bb 100644 --- a/src/mesa/glapi/glapi.c +++ b/src/mesa/glapi/glapi.c @@ -294,24 +294,19 @@ _glapi_get_context(void) void _glapi_set_dispatch(struct _glapi_table *dispatch) { - struct _glapi_table * old_style_dispatch; - - - /* Use the no-op functions if a NULL dispatch table was requested. - */ - - old_style_dispatch = (dispatch == NULL) - ? (struct _glapi_table *) __glapi_noop_table : dispatch; - + if (!dispatch) { + /* use the no-op functions */ + dispatch = (struct _glapi_table *) __glapi_noop_table; + } #ifdef DEBUG - if (dispatch != NULL) { + else { _glapi_check_table(dispatch); } #endif #if defined(THREADS) if (DispatchOverride) { - _glthread_SetTSD(&RealDispatchTSD, (void *) old_style_dispatch); + _glthread_SetTSD(&RealDispatchTSD, (void *) dispatch); if (ThreadSafe) _glapi_RealDispatch = (struct _glapi_table*) __glapi_threadsafe_table; else @@ -319,13 +314,13 @@ _glapi_set_dispatch(struct _glapi_table *dispatch) } else { /* normal operation */ - _glthread_SetTSD(&_gl_DispatchTSD, (void *) old_style_dispatch); + _glthread_SetTSD(&_gl_DispatchTSD, (void *) dispatch); if (ThreadSafe) { _glapi_Dispatch = (struct _glapi_table *) __glapi_threadsafe_table; _glapi_DispatchTSD = NULL; } else { - _glapi_Dispatch = old_style_dispatch; + _glapi_Dispatch = dispatch; _glapi_DispatchTSD = dispatch; } } -- cgit v1.2.3