]> git.sesse.net Git - vlc/commitdiff
xspf: cosmetics and fix potential memleak.
authorRémi Duraffort <ivoire@videolan.org>
Sat, 29 Aug 2009 08:17:30 +0000 (10:17 +0200)
committerRémi Duraffort <ivoire@videolan.org>
Sat, 29 Aug 2009 08:17:30 +0000 (10:17 +0200)
modules/demux/playlist/xspf.c

index 9594c9d394f17edda8ebf7dc3195ee545c363035..4a62a518c60475c98824e65da98802849a594251 100644 (file)
@@ -63,15 +63,15 @@ int Import_xspf( vlc_object_t *p_this )
 void Close_xspf( vlc_object_t *p_this )
 {
     demux_t *p_demux = (demux_t *)p_this;
-    int i;
-    for(i = 0; i < p_demux->p_sys->i_tracklist_entries; i++)
+    demux_sys_t *p_sys = p_demux->p_sys;
+    for( int i = 0; i < p_sys->i_tracklist_entries; i++ )
     {
-        if(p_demux->p_sys->pp_tracklist[i])
-            vlc_gc_decref( p_demux->p_sys->pp_tracklist[i] );
+        if( p_sys->pp_tracklist[i] )
+            vlc_gc_decref( p_sys->pp_tracklist[i] );
     }
-    free( p_demux->p_sys->pp_tracklist );
-    free( p_demux->p_sys->psz_base );
-    free( p_demux->p_sys );
+    free( p_sys->pp_tracklist );
+    free( p_sys->psz_base );
+    free( p_sys );
 }
 
 /**
@@ -113,6 +113,7 @@ int Demux( demux_t *p_demux )
     if( !psz_name || strcmp( psz_name, "playlist" ) )
     {
         msg_Err( p_demux, "invalid root node name: %s", psz_name );
+        free( psz_name );
         goto end;
     }
     free( psz_name );