[vlc-devel] RE : [PATCH] - media_list (libvlc api)

brezhoneg1 brezhoneg1 at yahoo.fr
Fri Nov 28 23:05:28 CET 2008


Hi,

   I know using git would be better. But, I still have a bandwidth
problem (and git clone is far too big). Hopefully, I should solve this
problem soon.

   If you feel the patch is ok, don't worry about ownership. Important
thing is that media list works! If it is no longer in sync with latest
git master, I can send a new version (still in diff -ru) during the
weekend.

Erwan10

-----Message d'origine-----
De : vlc-devel-bounces at videolan.org
[mailto:vlc-devel-bounces at videolan.org] De la part de Pierre d'Herbemont
Envoyé : vendredi 28 novembre 2008 18:50
À : Mailing list for VLC media player developers
Objet : Re: [vlc-devel] [PATCH] - media_list (libvlc api)

Hello,

Could you resend your patch using git format-patch (see the wiki)?  
This is nicer to track ownership.

Pierre.

On Nov 22, 2008, at 1:09 AM, brezhoneg1 wrote:

>
> Please, find here a list of issues that prevent media list (libvlc  
> api)
> 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  
> thread
> waiting for its own death via vlc_join).
> A workaround is to run the callback in a temporary dedicated thread
> (vlc_clone).
>
> - 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  
> "get_next_path"
> and "set_current_playing_item" leading to numerous "out-of-sync"  
> errors.
> "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)
>
>
> Erwan10
> < 
> patch_medialist_libvlc_api 
> .diff>_______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> http://mailman.videolan.org/listinfo/vlc-devel

_______________________________________________
vlc-devel mailing list
To unsubscribe or modify your subscription options:
http://mailman.videolan.org/listinfo/vlc-devel





More information about the vlc-devel mailing list