X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmodules%2Fos.c;fp=src%2Fmodules%2Fos.c;h=53368e47de6073a14356dd90b7e5f762a59341f9;hb=997ae1dc88c24d009bbaa61a2dea27291aa6949c;hp=4a8912799533be8bc24249e5d12662685172cf7f;hpb=3ea8408d39fdb61dd022f248b08081d4a9f45326;p=vlc diff --git a/src/modules/os.c b/src/modules/os.c index 4a89127995..53368e47de 100644 --- a/src/modules/os.c +++ b/src/modules/os.c @@ -65,6 +65,9 @@ # include # endif #endif +#ifdef HAVE_VALGRIND_VALGRIND_H +# include +#endif /***************************************************************************** * Local prototypes @@ -274,11 +277,11 @@ void module_Unload( module_handle_t handle ) FreeLibrary( handle ); #elif defined(HAVE_DL_DLOPEN) -# ifdef NDEBUG - dlclose( handle ); -# else - (void)handle; +# ifdef HAVE_VALGRIND_VALGRIND_H + if( RUNNING_ON_VALGRIND > 0 ) + return; /* do not dlclose() so that we get proper stack traces */ # endif + dlclose( handle ); #elif defined(HAVE_DL_SHL_LOAD) shl_unload( handle );