Module: Mesa Branch: master Commit: 45ba53324341234144ca02122bf2c0b5ef58c361 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=45ba53324341234144ca02122bf2c0b5ef58c361
Author: Chia-I Wu <[email protected]> Date: Thu Jan 28 16:49:40 2010 +0800 egl: Correctly unbind contexts in eglReleaseThread. MakeCurrent unbinds the current context of the current API. Modify the current API to make sure all contexts are correctly unbound. --- src/egl/main/eglapi.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/src/egl/main/eglapi.c b/src/egl/main/eglapi.c index d0f9749..7e77ef1 100644 --- a/src/egl/main/eglapi.c +++ b/src/egl/main/eglapi.c @@ -997,6 +997,7 @@ eglReleaseThread(void) /* unbind current contexts */ if (!_eglIsCurrentThreadDummy()) { _EGLThreadInfo *t = _eglGetCurrentThread(); + EGLint api_index = t->CurrentAPIIndex; EGLint i; for (i = 0; i < _EGL_API_NUM_APIS; i++) { @@ -1004,9 +1005,12 @@ eglReleaseThread(void) if (ctx) { _EGLDisplay *disp = ctx->Resource.Display; _EGLDriver *drv = disp->Driver; + t->CurrentAPIIndex = i; (void) drv->API.MakeCurrent(drv, disp, NULL, NULL, NULL); } } + + t->CurrentAPIIndex = api_index; } _eglDestroyCurrentThread(); _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
