]> git.sesse.net Git - vlc/commitdiff
cdda/info: fix memleaks.
authorRémi Duraffort <ivoire@videolan.org>
Fri, 1 Aug 2008 10:30:27 +0000 (12:30 +0200)
committerRémi Duraffort <ivoire@videolan.org>
Fri, 1 Aug 2008 10:30:27 +0000 (12:30 +0200)
modules/access/cdda/info.c

index 4f849272504aa9bde6b6948d2739b38ebfbf0f0d..02864462a16a7a39d056c13521b02ec9c148be26 100644 (file)
@@ -73,15 +73,15 @@ GetCDDBInfo( access_t *p_access, cdda_data_t *p_cdda )
         goto cddb_destroy;
     }
 
-    cddb_set_email_address( conn,
-                            config_GetPsz( p_access,
-                                           MODULE_STRING "-cddb-email") );
-    cddb_set_server_name( conn,
-                          config_GetPsz( p_access,
-                                         MODULE_STRING "-cddb-server") );
+    char* psz_email = config_GetPsz( p_access, MODULE_STRING "-cddb-email");
+    char* psz_srv_name = config_GetPsz( p_access, MODULE_STRING "-cddb-server");
+    cddb_set_email_address( conn, psz_email );
+    cddb_set_server_name( conn, psz_srv_name );
     cddb_set_server_port(conn,
                          config_GetInt( p_access,
                                         MODULE_STRING "-cddb-port") );
+    free( psz_email );
+    free( psz_srv_name );
 
   /* Set the location of the local CDDB cache directory.
      The default location of this directory is */
@@ -89,9 +89,9 @@ GetCDDBInfo( access_t *p_access, cdda_data_t *p_cdda )
     if (!config_GetInt( p_access, MODULE_STRING "-cddb-enable-cache" ))
         cddb_cache_disable(conn);
 
-    cddb_cache_set_dir(conn,
-                     config_GetPsz( p_access,
-                                    MODULE_STRING "-cddb-cachedir") );
+    char* psz_cache = config_GetPsz( p_access, MODULE_STRING "-cddb-cachedir");
+    cddb_cache_set_dir(conn, psz_cache );
+    free( psz_cache );
 
     cddb_set_timeout(conn,
                    config_GetInt( p_access, MODULE_STRING "-cddb-timeout") );
@@ -797,14 +797,14 @@ CDDAFormatTitle( const access_t *p_access, track_t i_track )
             config_varname = MODULE_STRING "-cddb-title-format";
         }
 #endif /*HAVE_LIBCDDB*/
-        psz_name =
-            CDDAFormatStr( p_access, p_cdda,
-                config_GetPsz( p_access, config_varname ),
-                psz_mrl, i_track );
-        free(psz_mrl);
+        char* psz_config_varname = config_GetPsz( p_access, config_varname );
+        psz_name = CDDAFormatStr( p_access, p_cdda, psz_config_varname,
+                                  psz_mrl, i_track );
+        free( psz_config_varname );
+        free( psz_mrl );
         return psz_name;
     }
-    return(NULL);
+    return NULL;
 }
 
 static playlist_item_t *