]> git.sesse.net Git - vlc/commitdiff
This dichotomy code apparently still is buggy. Todo: redo it
authorClément Stenac <zorglub@videolan.org>
Thu, 3 Aug 2006 22:24:42 +0000 (22:24 +0000)
committerClément Stenac <zorglub@videolan.org>
Thu, 3 Aug 2006 22:24:42 +0000 (22:24 +0000)
src/input/item.c

index dfee71b241305ed30b646764b641c6b9f1503d0d..4cd600eacb850958dcc0143fadf8f60adf163c40 100644 (file)
@@ -76,11 +76,11 @@ 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 );
 
-
     vlc_input_item_Clean( p_input );
 
     if( p_playlist )
     {
+#if 0
         i_bottom = 0; i_top = p_playlist->i_input_items - 1;
         i = i_top / 2;
         while( p_playlist->pp_input_items[i]->i_id != p_input->i_id &&
@@ -99,6 +99,16 @@ static void vlc_input_item_Destroy ( gc_object_t *p_this )
             REMOVE_ELEM( p_playlist->pp_input_items,
                          p_playlist->i_input_items, i );
         }
+#endif
+        for( i = 0 ; i< p_playlist->pp_input_items[i] ; i++ )
+        {
+            if( p_playlist->pp_input_items[i]->i_id == p_input->i_id )
+            {
+                REMOVE_ELEM( p_playlist->pp_input_items,
+                             p_playlist->i_input_items, i );
+                break;
+            }
+        }
         vlc_object_release( p_playlist );
     }
     free( p_input );