/* Update the input */
if( p_intf->p_sys->p_input == NULL )
{
- p_intf->p_sys->p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT,
- FIND_ANYWHERE );
+ p_playlist = (playlist_t *)vlc_object_find( p_intf,
+ VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
+ if( p_playlist )
+ {
+ p_intf->p_sys->p_input = p_playlist->p_input;
+ if( p_intf->p_sys->p_input )
+ vlc_object_yield( p_intf->p_sys->p_input );
+ vlc_object_release( p_playlist );
+ }
}
else if( p_intf->p_sys->p_input->b_dead )
{
// Update the input
if( getIntf()->p_sys->p_input == NULL )
{
- getIntf()->p_sys->p_input = (input_thread_t *)vlc_object_find(
- getIntf(), VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ getIntf()->p_sys->p_input = getIntf()->p_sys->p_playlist->p_input;
+ if( getIntf()->p_sys->p_input )
+ vlc_object_yield( getIntf()->p_sys->p_input );
}
else if( getIntf()->p_sys->p_input->b_dead )
{