static int Demux( demux_t *p_demux ) { input_item_t *p_input = input_GetItem( p_demux->p_input ); input_item_node_t *p_node = input_item_node_Create( p_input ); if( vlc_stream_ReadDir( p_demux->s, p_node ) ) { msg_Warn( p_demux, "unable to read directory" ); input_item_node_Delete( p_node ); return VLC_EGENERIC; } if (es_out_Control(p_demux->out, ES_OUT_POST_SUBNODE, p_node)) input_item_node_Delete(p_node); return VLC_SUCCESS; }
int vlc_stream_FilterDefaultReadDir( stream_t *s, input_item_node_t *p_node ) { assert( s->p_source != NULL ); return vlc_stream_ReadDir( s->p_source, p_node ); }