/* LibVLC internal version */ void _libvlc_media_list_remove_index( libvlc_media_list_t * p_mlist, int index, libvlc_exception_t * p_e ) { libvlc_media_t * p_md; if( index < 0 || index >= vlc_array_count( &p_mlist->items )) { libvlc_exception_raise( p_e, "Index out of bounds"); return; } p_md = vlc_array_item_at_index( &p_mlist->items, index ); notify_item_deletion( p_mlist, p_md, index, EventWillHappen ); vlc_array_remove( &p_mlist->items, index ); notify_item_deletion( p_mlist, p_md, index, EventDidHappen ); libvlc_media_release( p_md ); }
/* LibVLC internal version */ int libvlc_media_list_internal_remove_index( libvlc_media_list_t * p_mlist, int index ) { libvlc_media_t * p_md; if( index < 0 || index >= vlc_array_count( &p_mlist->items )) { libvlc_printerr( "Index out of bounds" ); return -1; } p_md = vlc_array_item_at_index( &p_mlist->items, index ); notify_item_deletion( p_mlist, p_md, index, EventWillHappen ); vlc_array_remove( &p_mlist->items, index ); notify_item_deletion( p_mlist, p_md, index, EventDidHappen ); libvlc_media_release( p_md ); return 0; }