[vlc-devel] [PATCH] - media_list (libvlc api)
pdherbemont at free.fr
Fri Nov 28 18:50:26 CET 2008
Could you resend your patch using git format-patch (see the wiki)?
This is nicer to track ownership.
On Nov 22, 2008, at 1:09 AM, brezhoneg1 wrote:
> Please, find here a list of issues that prevent media list (libvlc
> from working properly. (Mainly things related to
> "libvlc_media_list_player_next" function). A patch is provided if that
> can help. (Patch tested and working)
> Files are:
> - include/vlc/libvlc_events.h
> - src/control/core.c
> - src/control/media_list_path.h
> - src/control/media_list_player.c
> The patch corrects the following:
> -function: "libvlc_media_list_player"
> Initialization of "p_instance" was missing, leading msg_Warn to crash.
> -function: "libvlc_exception_clear"
> Check a NULL pointer to prevent crash to occur. (does occur)
> -function: "libvlc_media_list_path_copy_by_appending"
> Memory problem with memcpy (size is 4-byte too long) (crash)
> -function: "libvlc_media_list_parentlist_at_path"
> Missing vlc_media_list_retain for returned value.
> (leads to unwanted media_list destruction and crash after some time)
> -callback: "media_player_reached_end"
> The callback is run by input thread and launches
> "libvlc_media_list_player_next". This function tries to clean up the
> input thread and start a new one. This leads to a deadlock (input
> waiting for its own death via vlc_join).
> A workaround is to run the callback in a temporary dedicated thread
> - functions: "get_next_path" and "set_current_playing_item"
> Function "get_next_path" was not fully tested (missing incrementation)
> Also, a one-level sublist was taken into account in both
> and "set_current_playing_item" leading to numerous "out-of-sync"
> "get_next_path" is changed to take into account multi-level sublists.
> "set_current_playing_item" is made simpler to prevent these
> "out-of-sync" errors.
> - function: "libvlc_media_list_player_next"
> An error was raised to signal a normal end of playlist.
> This patch creates a new libvlc_MediaListPlayerEndReached event.
> (Consistent with media_player)
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
More information about the vlc-devel