#include "xmlparser.hpp"
#include "../src/os_factory.hpp"
+#include <vlc_url.h>
#ifdef HAVE_SYS_STAT_H
# include <sys/stat.h>
return;
}
- // Avoid duplicate initialization (mutex needed ?)
- if( !m_initialized )
- {
- LoadCatalog();
- m_initialized = true;
- }
+ // Avoid duplicate initialization (mutex needed ?) -> doesn't work
+ // Reinitialization required for a new XMLParser
+ // if( !m_initialized )
+ // {
+ // LoadCatalog();
+ // m_initialized = true;
+ // }
+ LoadCatalog();
+
+ char* psz_uri = make_URI( rFileName.c_str(), NULL );
+ m_pStream = stream_UrlNew( pIntf, psz_uri );
+ free( psz_uri );
- m_pStream = stream_UrlNew( pIntf, rFileName.c_str() );
if( !m_pStream )
{
msg_Err( getIntf(), "failed to open %s for reading",
XMLParser::~XMLParser()
{
- if( m_pReader && m_pXML ) xml_ReaderDelete( m_pXML, m_pReader );
+ if( m_pReader ) xml_ReaderDelete( m_pReader );
if( m_pXML ) xml_Delete( m_pXML );
if( m_pStream ) stream_Delete( m_pStream );
}