]> git.sesse.net Git - vlc/commitdiff
Yet more free troubles.
authorSteinar Gunderson <sgunderson@bigfoot.com>
Sun, 26 Sep 2010 22:13:21 +0000 (00:13 +0200)
committerSteinar Gunderson <sgunderson@bigfoot.com>
Sun, 26 Sep 2010 22:13:21 +0000 (00:13 +0200)
modules/access/sdi.cpp

index bce0a04624cf173019e910553b7987fcefce2ff2..9e9acc92496c2100850f3ac0cabc99d1e1e47fbe 100644 (file)
@@ -380,6 +380,7 @@ static int Open( vlc_object_t *p_this )
         {
             msg_Err( p_demux, "Invalid --sdi-audio-connection specified; choose one of " \
                               "embedded, aesebu, or analog." );
+            free( psz_tmp );
             p_config->Release();
             Close( p_this );
             return VLC_EGENERIC;
@@ -413,6 +414,7 @@ static int Open( vlc_object_t *p_this )
     char *psz_display_mode = var_CreateGetString( p_demux, "sdi-mode" );
     if( !psz_display_mode || strlen( psz_display_mode ) == 0 || strlen( psz_display_mode ) > 4 ) {
         msg_Err( p_demux, "Missing or invalid --sdi-mode string" );
+        free( psz_display_mode );
         p_display_iterator->Release();
         Close( p_this );
         return VLC_EGENERIC;
@@ -426,6 +428,8 @@ static int Open( vlc_object_t *p_this )
     strcpy(sz_display_mode_padded, "    ");
     for( int i = 0; i < strlen( psz_display_mode ); ++i )
         sz_display_mode_padded[i] = psz_display_mode[i];
+        
+    free( psz_display_mode );
 
     BMDDisplayMode wanted_mode_id;
     memcpy( &wanted_mode_id, &sz_display_mode_padded, sizeof(wanted_mode_id) );