[vlc-devel] [PATCH] Set the media descriptor on the MediaListPlayerNextItemSet event.
Rémi Denis-Courmont
remi at remlab.net
Mon May 7 21:50:08 CEST 2012
Le lundi 7 mai 2012 22:45:10 Mark Lee, vous avez écrit :
> ---
> lib/media_list_player.c | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/lib/media_list_player.c b/lib/media_list_player.c
> index 7522e5e..09109c7 100644
> --- a/lib/media_list_player.c
> +++ b/lib/media_list_player.c
> @@ -646,14 +646,21 @@
> libvlc_media_list_player_get_state(libvlc_media_list_player_t * p_mlp) int
> libvlc_media_list_player_play_item_at_index(libvlc_media_list_player_t *
> p_mlp, int i_index) {
> lock(p_mlp);
> - set_current_playing_item(p_mlp,
> libvlc_media_list_path_with_root_index(i_index)); +
> libvlc_media_list_path_t path =
> libvlc_media_list_path_with_root_index(i_index); +
> set_current_playing_item(p_mlp, path);
> libvlc_media_player_play(p_mlp->p_mi);
> + libvlc_media_t* p_md = libvlc_media_list_item_at_path(p_mlp->p_mlist,
> path); unlock(p_mlp);
>
> /* Send the next item event */
> libvlc_event_t event;
> event.type = libvlc_MediaListPlayerNextItemSet;
> + event.u.media_list_player_next_item_set.item = p_md;
> libvlc_event_send(p_mlp->p_event_manager, &event);
> +
> + if (p_md)
> + libvlc_media_release(p_md);
I don't understand where the reference is acquired. The new code does not seem
to add any new reference. Was there a leak before?
> +
> return 0;
> }
--
Rémi Denis-Courmont
http://www.remlab.net/
http://fi.linkedin.com/in/remidenis
More information about the vlc-devel
mailing list