From: José Fonseca Date: Mon, 6 Jul 2009 16:40:08 +0000 (+0100) Subject: wgl: Check for multiple threads before GET_CURRENT_CONTEXT. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6f4167c8a215b561e5ad6eb58a8d875a5b8d8d6a;p=mesa.git wgl: Check for multiple threads before GET_CURRENT_CONTEXT. Fixes wglthreads -- the 2nd thread MakeCurrent call was trying to flush the first thread context while still in use. --- diff --git a/src/gallium/state_trackers/wgl/shared/stw_context.c b/src/gallium/state_trackers/wgl/shared/stw_context.c index 9df1ab76526..8393efbccf5 100644 --- a/src/gallium/state_trackers/wgl/shared/stw_context.c +++ b/src/gallium/state_trackers/wgl/shared/stw_context.c @@ -60,8 +60,14 @@ stw_context(GLcontext *glctx) static INLINE struct stw_context * stw_current_context(void) { - GET_CURRENT_CONTEXT( glctx ); - return stw_context(glctx); + /* We must check if multiple threads are being used or GET_CURRENT_CONTEXT + * might return the current context of the thread first seen. */ + _glapi_check_multithread(); + + { + GET_CURRENT_CONTEXT( glctx ); + return stw_context(glctx); + } } BOOL