- p_item = playlist_NodeAddInput( p_playlist, p_input, p_sys->p_node_cat,
- PLAYLIST_APPEND, PLAYLIST_END,
- VLC_FALSE );
- p_item = playlist_NodeAddInput( p_playlist, p_input, p_sys->p_node_one,
- PLAYLIST_APPEND, PLAYLIST_END,
- VLC_FALSE );
- free( psz_buf );
- p_sys->pp_input[i] = input_CreateThread( p_playlist, p_input );
- }
-
- val.b_bool = VLC_TRUE;
- var_Set( p_playlist, "intf-change", val );
-
- vlc_object_release( p_playlist );
-
- return VLC_SUCCESS;
-}
-
-/*****************************************************************************
- * Close:
- *****************************************************************************/
-static void Close( vlc_object_t *p_this )
-{
- services_discovery_t *p_sd = ( services_discovery_t* )p_this;
- services_discovery_sys_t *p_sys = p_sd->p_sys;
- playlist_t *p_playlist = (playlist_t *) vlc_object_find( p_sd,
- VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
- int i;
- for( i = 0; i < p_sys->i_urls; i++ )
- {
- if( p_sd->p_sys->pp_input[i] )
- {
- input_StopThread( p_sd->p_sys->pp_input[i] );
- input_DestroyThread( p_sd->p_sys->pp_input[i] );
- p_sd->p_sys->pp_input[i] = NULL;
- }
- }
- free( p_sd->p_sys->pp_input );
- if( p_playlist )
- {
- playlist_NodeDelete( p_playlist, p_sys->p_node_cat, VLC_TRUE, VLC_TRUE );
- playlist_NodeDelete( p_playlist, p_sys->p_node_one, VLC_TRUE, VLC_TRUE );
- vlc_object_release( p_playlist );