From: Brian Paul Date: Fri, 27 Aug 2010 17:54:32 +0000 (-0600) Subject: mesa: use atexit() handler to release GLSL compiler memory X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=579fce252413f39830ee379076fddf0580ea9b16;p=mesa.git mesa: use atexit() handler to release GLSL compiler memory This releases a bunch of memory that was showing up as leaks with valgrind. If atexit() isn't widely supported we may need to add some #ifdef tests around the call. --- diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index 6205d3456a4..4852f466469 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -140,6 +140,10 @@ #include "sparc/sparc.h" #endif +#include "glsl_parser_extras.h" + + + #ifndef MESA_VERBOSE int MESA_VERBOSE = 0; #endif @@ -434,6 +438,11 @@ one_time_init( GLcontext *ctx ) } _glthread_UNLOCK_MUTEX(OneTimeLock); + /* Hopefully atexit() is widely available. If not, we may need some + * #ifdef tests here. + */ + atexit(_mesa_destroy_shader_compiler); + dummy_enum_func(); }