]> git.sesse.net Git - vlc/commitdiff
* Fix skip in initial status
authorClément Stenac <zorglub@videolan.org>
Mon, 12 Jun 2006 19:21:01 +0000 (19:21 +0000)
committerClément Stenac <zorglub@videolan.org>
Mon, 12 Jun 2006 19:21:01 +0000 (19:21 +0000)
* Don't waste ids
* Fix a bug in services discoveries

src/input/item.c
src/playlist/control.c
src/playlist/item.c
src/playlist/tree.c

index 9f893b73db02c66732282c4ef5573f6741c9024d..dfee71b241305ed30b646764b641c6b9f1503d0d 100644 (file)
@@ -76,8 +76,6 @@ static void vlc_input_item_Destroy ( gc_object_t *p_this )
     playlist_t *p_playlist = (playlist_t *)vlc_object_find( p_obj,
                                           VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
 
-    fprintf( stderr, "Destroying item %s\n", p_input->psz_name );
-
 
     vlc_input_item_Clean( p_input );
 
index 82e62e322a65af57407fa13b7e60e0dfc6672fd2..241d3a0d0cb2366d05a89d492c7bb73367d4d15c 100644 (file)
@@ -168,6 +168,9 @@ int PlaylistVAControl( playlist_t * p_playlist, int i_query, va_list args )
         p_playlist->request.p_node = p_playlist->status.p_node;
         p_playlist->request.p_item = p_playlist->status.p_item;
         p_playlist->request.i_skip = (int) va_arg( args, int );
+        /* if already running, keep running */
+        if( p_playlist->status.i_status != PLAYLIST_STOPPED )
+            p_playlist->request.i_status = p_playlist->status.i_status;
         p_playlist->request.b_request = VLC_TRUE;
         break;
 
index 58235c3aebfe607667e831aa25d0a4fed4bb9467..a1f164dd03cb0b5524126fd88b1b2618bacd68bf 100644 (file)
@@ -237,7 +237,6 @@ int playlist_PlaylistAddInput( playlist_t* p_playlist, input_item_t *p_input,
                                int i_mode, int i_pos )
 {
     playlist_item_t *p_item_cat, *p_item_one;
-    p_input->i_id = ++p_playlist->i_last_input_id;
 
     msg_Dbg( p_playlist, "adding playlist item `%s' ( %s )",
              p_input->psz_name, p_input->psz_uri );
index 86fea0233e9d95246ba7006a6cb92b29642da06f..387a17e3b5ee6d5b2a4392aa90f00eca05dfddeb 100644 (file)
@@ -300,6 +300,8 @@ void playlist_NodesCreateForSD( playlist_t *p_playlist, char *psz_name,
                                         p_playlist->p_root_onelevel );
     (*pp_node_one)->i_flags |= PLAYLIST_RO_FLAG;
     (*pp_node_one)->i_flags |= PLAYLIST_SKIP_FLAG;
+
+    (*pp_node_one)->p_input->i_id = (*pp_node_cat)->p_input->i_id;
 }