]> git.sesse.net Git - vlc/blobdiff - src/playlist/item.c
Fix breakage in transcode file selection
[vlc] / src / playlist / item.c
index 332ca1a20ec25ec77b0be7f6cc35244e5d073144..0c3ad26b868a14c6c11bd71b04fcaef90bb077c0 100644 (file)
@@ -27,6 +27,7 @@
 #include <vlc/vlc.h>
 #include <vlc/input.h>
 
+#include "vlc_input.h"
 #include "vlc_playlist.h"
 
 static void GuessType( input_item_t *p_item);
@@ -87,8 +88,6 @@ playlist_item_t * playlist_ItemNewWithType( vlc_object_t *p_obj,
     if( p_item->input.i_type == ITEM_TYPE_UNKNOWN )
         GuessType( &p_item->input );
 
-    playlist_ItemCreateCategory( p_item, _("General") );
-
     return p_item;
 }
 
@@ -276,8 +275,8 @@ int playlist_ItemSetDuration( playlist_item_t *p_item, mtime_t i_duration )
         {
             memcpy( psz_buffer, "--:--:--", sizeof("--:--:--") );
         }
-        playlist_ItemAddInfo( p_item, _("General") , _("Duration"),
-                              "%s", psz_buffer );
+        vlc_input_item_AddInfo( &p_item->input, _("General") , _("Duration"),
+                                "%s", psz_buffer );
 
         return VLC_SUCCESS;
     }
@@ -293,7 +292,7 @@ static void GuessType( input_item_t *p_item)
     {
         { "http", ITEM_TYPE_NET },
         { "dvd", ITEM_TYPE_DISC },
-        { "cdda", ITEM_TYPE_DISC },
+        { "cdda", ITEM_TYPE_CDDA },
         { "mms", ITEM_TYPE_NET },
         { "rtsp", ITEM_TYPE_NET },
         { "udp", ITEM_TYPE_NET },
@@ -308,6 +307,12 @@ static void GuessType( input_item_t *p_item)
         { NULL, 0 }
     };
 
+    static struct { char *psz_search; int i_type; } exts_array[] =
+    {
+        { "mp3", ITEM_TYPE_AFILE },
+        { NULL, 0 }
+    };
+
     for( i = 0; types_array[i].psz_search != NULL; i++ )
     {
         if( !strncmp( p_item->psz_uri, types_array[i].psz_search,
@@ -317,5 +322,5 @@ static void GuessType( input_item_t *p_item)
             return;
         }
     }
-    p_item->i_type = ITEM_TYPE_UNKNOWN;
+    p_item->i_type = ITEM_TYPE_VFILE;
 }