*****************************************************************************/
static void AddStateVariableCallback(filter_t *p_filter)
{
- playlist_t *p_playlist = (playlist_t *)vlc_object_find( p_filter,
- VLC_OBJECT_PLAYLIST,
- FIND_ANYWHERE );
- if( p_playlist )
+ playlist_t *p_playlist = pl_Yield( p_filter );
+ input_thread_t *p_input = p_playlist->p_input;
+ if(p_input)
{
- input_thread_t *p_input = p_playlist->p_input;
- if(p_input)
- {
- var_AddCallback( p_input, "state", StateCallback, p_filter );
- }
- vlc_object_release( p_playlist );
+ var_AddCallback( p_input, "state", StateCallback, p_filter );
}
+ vlc_object_release( p_playlist );
}
/*****************************************************************************
*****************************************************************************/
static void DelStateVariableCallback( filter_t *p_filter )
{
- playlist_t *p_playlist = (playlist_t *)vlc_object_find( p_filter,
- VLC_OBJECT_PLAYLIST,
- FIND_ANYWHERE );
- if( p_playlist )
+ playlist_t *p_playlist = pl_Yield( p_filter );
+ input_thread_t *p_input = p_playlist->p_input;
+ if(p_input)
{
- input_thread_t *p_input = p_playlist->p_input;
- if(p_input)
- {
- var_DelCallback( p_input, "state", StateCallback, p_filter );
- }
- vlc_object_release( p_playlist );
+ var_DelCallback( p_input, "state", StateCallback, p_filter );
}
+ vlc_object_release( p_playlist );
}