Fix leaking of psz_object_name
authorRafaël Carré <funman@videolan.org>
Mon, 5 May 2008 09:10:48 +0000 (11:10 +0200)
committerRafaël Carré <funman@videolan.org>
Mon, 5 May 2008 09:10:48 +0000 (11:10 +0200)
src/modules/cache.c
src/modules/modules.c

index 4e96d48..61c6074 100644 (file)
@@ -265,6 +265,7 @@ void CacheLoad( vlc_object_t *p_this )
         pp_cache[i]->p_module = vlc_module_create( p_this );
 
         /* Load additional infos */
+        free( pp_cache[i]->p_module->psz_object_name );
         LOAD_STRING( pp_cache[i]->p_module->psz_object_name );
         LOAD_STRING( pp_cache[i]->p_module->psz_shortname );
         LOAD_STRING( pp_cache[i]->p_module->psz_longname );
index dfd51d4..af619a5 100644 (file)
@@ -1312,7 +1312,6 @@ static void DupModule( module_t *p_module )
 
     /* We strdup() these entries so that they are still valid when the
      * module is unloaded. */
-    p_module->psz_object_name = strdup( p_module->psz_object_name );
     p_module->psz_capability = strdup( p_module->psz_capability );
     p_module->psz_shortname = p_module->psz_shortname ?
                                  strdup( p_module->psz_shortname ) : NULL;