From 579fce252413f39830ee379076fddf0580ea9b16 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 27 Aug 2010 11:54:32 -0600 Subject: [PATCH] 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. --- src/mesa/main/context.c | 9 +++++++++ 1 file changed, 9 insertions(+) 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(); } -- 2.30.2