- Item* item = parent->getItem( i );
- playlist_item_t* parentNode = parent->getPlaylistNode();
-
- playlist_item_t* node = playlist_ItemNew( _cookie->serviceDiscovery,
- item->getResource(),
- item->getTitle() );
-
- playlist_NodeAddItem( _cookie->serviceDiscovery->p_sys->p_playlist,
- node,
- parentNode, PLAYLIST_APPEND, PLAYLIST_END );
-
- item->setPlaylistNode( node );
+ Item* item = parent->getItem( i );
+ playlist_item_t* parentNode = parent->getPlaylistNode();
+
+ input_item_t* p_input = input_ItemNew( _cookie->serviceDiscovery,
+ item->getResource(),
+ item->getTitle() );
+ int i_cat;
+ playlist_BothAddInput( p_playlist, p_input, parentNode,
+ PLAYLIST_APPEND, PLAYLIST_END, &i_cat, NULL,
+ VLC_FALSE );
+ /* TODO: do this better by storing ids */
+ playlist_item_t *p_node = playlist_ItemGetById( p_playlist, i_cat, VLC_FALSE );
+ assert( p_node );
+ item->setPlaylistNode( p_node );