diff --git a/src/EGL/libeglcurrent.c b/src/EGL/libeglcurrent.c index e9597d2..0e55c88 100644 --- a/src/EGL/libeglcurrent.c +++ b/src/EGL/libeglcurrent.c @@ -94,9 +94,9 @@ void __eglCurrentTeardown(EGLBoolean doReset) while (!glvnd_list_is_empty(¤tThreadStateList)) { __EGLThreadAPIState *threadState = glvnd_list_first_entry( ¤tThreadStateList, __EGLThreadAPIState, entry); - __glvndPthreadFuncs.setspecific(threadStateKey, NULL); - DestroyThreadState(threadState); + DestroyThreadState(threadState); } + __glvndPthreadFuncs.setspecific(threadStateKey, NULL); if (doReset) { __glvndPthreadFuncs.mutex_init(¤tStateListMutex, NULL);