case ID_playlistitems_remove:
if( (argCount == 1) && isNumberValue(args[0]) )
{
- p_plugin->playlist_delete_item(numberValue(args[0]),&ex);
- RETURN_ON_EXCEPTION(this,ex);
+ if( !p_plugin->playlist_delete_item(numberValue(args[0])) )
+ return INVOKERESULT_GENERIC_ERROR;
VOID_TO_NPVARIANT(result);
return INVOKERESULT_NO_ERROR;
}
case ID_playlist_removeitem: /* deprecated */
if( (argCount == 1) && isNumberValue(args[0]) )
{
- p_plugin->playlist_delete_item(numberValue(args[0]), &ex);
- RETURN_ON_EXCEPTION(this,ex);
+ if( !p_plugin->playlist_delete_item(numberValue(args[0])) )
+ return INVOKERESULT_GENERIC_ERROR;
VOID_TO_NPVARIANT(result);
return INVOKERESULT_NO_ERROR;
}
return -1;
libvlc_media_list_lock(libvlc_media_list);
- libvlc_media_list_add_media(libvlc_media_list,p_m,ex);
- if( !libvlc_exception_raised(ex) )
+ if( !libvlc_media_list_add_media(libvlc_media_list,p_m) )
item = libvlc_media_list_count(libvlc_media_list)-1;
libvlc_media_list_unlock(libvlc_media_list);
libvlc_media_add_option_flag(p_m, optv[i], libvlc_media_option_unique);
libvlc_media_list_lock(libvlc_media_list);
- libvlc_media_list_add_media(libvlc_media_list,p_m,ex);
- if( !libvlc_exception_raised(ex) )
+ if( !libvlc_media_list_add_media(libvlc_media_list,p_m) )
item = libvlc_media_list_count(libvlc_media_list)-1;
libvlc_media_list_unlock(libvlc_media_list);
libvlc_media_release(p_m);
playlist_index = idx;
- p_m = libvlc_media_list_item_at_index(libvlc_media_list,playlist_index,ex);
+ p_m = libvlc_media_list_item_at_index(libvlc_media_list,playlist_index);
libvlc_media_list_unlock(libvlc_media_list);
- if( libvlc_exception_raised(ex) )
+ if( !p_m )
return false;
if( libvlc_media_player )
return false;
}
-void VlcPlugin::playlist_delete_item( int idx, libvlc_exception_t *ex )
+int VlcPlugin::playlist_delete_item( int idx )
{
libvlc_media_list_lock(libvlc_media_list);
- libvlc_media_list_remove_index(libvlc_media_list,idx,ex);
+ int ret = libvlc_media_list_remove_index(libvlc_media_list,idx);
libvlc_media_list_unlock(libvlc_media_list);
+ return ret;
}
void VlcPlugin::playlist_clear()
int playlist_add( const char *, libvlc_exception_t * );
int playlist_add_extended_untrusted( const char *, const char *, int,
const char **, libvlc_exception_t * );
- void playlist_delete_item( int, libvlc_exception_t * );
+ int playlist_delete_item( int );
void playlist_clear();
int playlist_count();