Do not use sprintf without a format
authorRafaël Carré <funman@videolan.org>
Mon, 24 Mar 2008 01:04:38 +0000 (01:04 +0000)
committerRafaël Carré <funman@videolan.org>
Mon, 24 Mar 2008 01:04:38 +0000 (01:04 +0000)
src/text/strings.c

index 896b225..aebefe0 100644 (file)
@@ -659,7 +659,8 @@ char *__str_format_meta( vlc_object_t *p_object, const char *string )
     int b_empty_if_na = 0;
     char buf[10];
     int i_size = strlen( string ) + 1; /* +1 to store '\0' */
     int b_empty_if_na = 0;
     char buf[10];
     int i_size = strlen( string ) + 1; /* +1 to store '\0' */
-    char *dst = malloc( i_size );
+    char *dst = strdup( string );
+    if( !dst ) return NULL;
     int d = 0;
 
     playlist_t *p_playlist = pl_Yield( p_object );
     int d = 0;
 
     playlist_t *p_playlist = pl_Yield( p_object );
@@ -672,8 +673,6 @@ char *__str_format_meta( vlc_object_t *p_object, const char *string )
         p_item = input_GetItem(p_input);
     }
 
         p_item = input_GetItem(p_input);
     }
 
-    sprintf( dst, string );
-
     while( *s )
     {
         if( b_is_format )
     while( *s )
     {
         if( b_is_format )