diff options
author | Chia-I Wu <[email protected]> | 2009-08-10 16:45:12 +0800 |
---|---|---|
committer | Brian Paul <[email protected]> | 2009-08-11 22:14:35 -0600 |
commit | 64e7bb326207df559b5cebdb278f62df83cf1425 (patch) | |
tree | 3a30ae4d91b65757dced4b6f4e599b6a6c9180ed /src/egl/main/eglcurrent.c | |
parent | 435c7ac24d8d6f8ddae59f4b66983d7642250d1e (diff) |
egl: Use _eglAddAtExitCall to free thread infos and displays.
Thread infos and displays are usually not freed by applications. This
commit add atexit calls to free them.
Signed-off-by: Chia-I Wu <[email protected]>
Diffstat (limited to 'src/egl/main/eglcurrent.c')
-rw-r--r-- | src/egl/main/eglcurrent.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/egl/main/eglcurrent.c b/src/egl/main/eglcurrent.c index f92719cfbc6..4431f964f69 100644 --- a/src/egl/main/eglcurrent.c +++ b/src/egl/main/eglcurrent.c @@ -4,6 +4,7 @@ #include "eglcontext.h" #include "egllog.h" #include "eglmutex.h" +#include "eglglobals.h" /* This should be kept in sync with _eglInitThreadInfo() */ @@ -84,7 +85,7 @@ static INLINE EGLBoolean _eglInitTSD(void (*dtor)(_EGLThreadInfo *)) return EGL_FALSE; } _egl_FreeTSD = dtor; - (void) _eglFiniTSD; + _eglAddAtExitCall(_eglFiniTSD); _egl_TSDInitialized = EGL_TRUE; } @@ -118,7 +119,7 @@ static INLINE EGLBoolean _eglInitTSD(void (*dtor)(_EGLThreadInfo *)) { if (!_egl_FreeTSD && dtor) { _egl_FreeTSD = dtor; - (void) _eglFiniTSD; + _eglAddAtExitCall(_eglFiniTSD); } return EGL_TRUE; } |