From: Sébastien Escudier Date: Fri, 11 Sep 2009 09:30:36 +0000 (+0200) Subject: vod preparsing : if muxer is specified, only wait for input_item_IsPreparsed X-Git-Tag: 1.1.0-ff~3384 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=41d8d0bec7477ac4340f6c647019f7dc418f27f4;p=vlc vod preparsing : if muxer is specified, only wait for input_item_IsPreparsed Signed-off-by: Rémi Denis-Courmont --- diff --git a/src/input/vlm.c b/src/input/vlm.c index 8acce0c7e4..7fb098da9d 100644 --- a/src/input/vlm.c +++ b/src/input/vlm.c @@ -75,7 +75,8 @@ static int InputEventPreparse( vlc_object_t *p_this, char const *psz_cmd, VLC_UNUSED(p_this); VLC_UNUSED(psz_cmd); VLC_UNUSED(oldval); vlc_sem_t *p_sem_preparse = p_data; - if( newval.i_int == INPUT_EVENT_DEAD ) + if( newval.i_int == INPUT_EVENT_DEAD || + newval.i_int == INPUT_EVENT_ITEM_META ) vlc_sem_post( p_sem_preparse ); return VLC_SUCCESS; @@ -574,7 +575,7 @@ static int vlm_OnMediaUpdate( vlm_t *p_vlm, vlm_media_sys_t *p_media ) vlc_sem_init( &sem_preparse, 0 ); var_AddCallback( p_input, "intf-event", InputEventPreparse, &sem_preparse ); - if( !p_input->b_dead ) + while( !p_input->b_dead && ( !p_cfg->vod.psz_mux || !input_item_IsPreparsed( p_media->vod.p_item ) ) ) vlc_sem_wait( &sem_preparse ); var_DelCallback( p_input, "intf-event", InputEventPreparse, &sem_preparse );