Changeset 7e063c475582352fe51175275023dfa49e09e5a1

Show
Ignore:
Timestamp:
14/07/08 17:39:27 (5 months ago)
Author:
Rémi Duraffort <ivoire@videolan.org>
git-committer:
Rémi Duraffort <ivoire@videolan.org> 1216049967 +0200
git-parent:

[9d65e77152039fcb91ff55e8a590bafc17f642c0]

git-author:
Rémi Duraffort <ivoire@videolan.org> 1216049967 +0200
Message:

Check asprintf return value and avoid potential segfault.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • src/input/vlm.c

    r91a4847 r7e063c4  
    504504 
    505505            if( p_cfg->psz_output ) 
    506                 asprintf( &psz_output, "%s:description", p_cfg->psz_output ); 
     506            { 
     507                if( asprintf( &psz_output, "%s:description", p_cfg->psz_output )  == -1 ) 
     508                    psz_output = NULL; 
     509            } 
    507510            else 
    508                 asprintf( &psz_output, "#description" ); 
    509  
    510             asprintf( &psz_dup, "sout=%s", psz_output); 
    511             input_ItemAddOption( p_media->vod.p_item, psz_dup ); 
    512             free( psz_dup ); 
     511                psz_output = strdup( "#description" ); 
     512 
     513            if( psz_output && asprintf( &psz_dup, "sout=%s", psz_output) != -1 ) 
     514            { 
     515                input_ItemAddOption( p_media->vod.p_item, psz_dup ); 
     516                free( psz_output ); 
     517                free( psz_dup ); 
     518            } 
    513519            for( i = 0; i < p_cfg->i_option; i++ ) 
    514520                input_ItemAddOption( p_media->vod.p_item, 
     
    525531                vlc_object_release( p_input ); 
    526532            } 
    527             free( psz_output ); 
    528533            free( psz_header ); 
    529534