Commit db8219ed authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Allow libxml 2.7. Leak memory.

parent 5aa35524
...@@ -4311,13 +4311,13 @@ dnl ...@@ -4311,13 +4311,13 @@ dnl
AC_ARG_ENABLE(libxml2, AC_ARG_ENABLE(libxml2,
[ --enable-libxml2 libxml2 support (default enabled)]) [ --enable-libxml2 libxml2 support (default enabled)])
AS_IF([test "${enable_libxml2}" != "no"], [ AS_IF([test "${enable_libxml2}" != "no"], [
PKG_CHECK_MODULES([XML2], [libxml-2.0 >= 2.5 libxml-2.0 < 2.7], [ PKG_CHECK_MODULES([XML2], [libxml-2.0 >= 2.5], [
VLC_ADD_CPPFLAGS([xml],[${XML2_CFLAGS}]) VLC_ADD_CPPFLAGS([xml],[${XML2_CFLAGS}])
VLC_ADD_LIBS([xml],[${XML2_LIBS}]) VLC_ADD_LIBS([xml],[${XML2_LIBS}])
VLC_ADD_PLUGIN([xml]) VLC_ADD_PLUGIN([xml])
], [ ], [
AS_IF([test "x${enable_xml2}" != "x"], [ AS_IF([test "x${enable_xml2}" != "x"], [
AC_MSG_ERROR([Could not find libxml version 2.5 or 2.6]) AC_MSG_ERROR([Could not find libxml version 2.5 or higher])
]) ])
]) ])
]) ])
......
...@@ -35,10 +35,6 @@ ...@@ -35,10 +35,6 @@
#include <libxml/xmlreader.h> #include <libxml/xmlreader.h>
#include <libxml/catalog.h> #include <libxml/catalog.h>
#if !defined (LIBXML_VERSION) || (LIBXML_VERSION > 20700)
# error Stale config.cache detected. Erase it and re-run configure.
#endif
/***************************************************************************** /*****************************************************************************
* Module descriptor * Module descriptor
*****************************************************************************/ *****************************************************************************/
...@@ -71,7 +67,6 @@ static void CatalogLoad( xml_t *, const char * ); ...@@ -71,7 +67,6 @@ static void CatalogLoad( xml_t *, const char * );
static void CatalogAdd( xml_t *, const char *, const char *, const char * ); static void CatalogAdd( xml_t *, const char *, const char *, const char * );
static int StreamRead( void *p_context, char *p_buffer, int i_buffer ); static int StreamRead( void *p_context, char *p_buffer, int i_buffer );
static unsigned refs = 0;
static vlc_mutex_t lock = VLC_STATIC_MUTEX; static vlc_mutex_t lock = VLC_STATIC_MUTEX;
/***************************************************************************** /*****************************************************************************
...@@ -85,7 +80,6 @@ static int Open( vlc_object_t *p_this ) ...@@ -85,7 +80,6 @@ static int Open( vlc_object_t *p_this )
return VLC_EGENERIC; return VLC_EGENERIC;
vlc_mutex_lock( &lock ); vlc_mutex_lock( &lock );
if( refs++ == 0 )
xmlInitParser(); xmlInitParser();
vlc_mutex_unlock( &lock ); vlc_mutex_unlock( &lock );
...@@ -103,11 +97,11 @@ static int Open( vlc_object_t *p_this ) ...@@ -103,11 +97,11 @@ static int Open( vlc_object_t *p_this )
*****************************************************************************/ *****************************************************************************/
static void Close( vlc_object_t *p_this ) static void Close( vlc_object_t *p_this )
{ {
#ifdef LIBXML_GETS_A_CLUE_ABOUT_REENTRANCY_AND_MEMORY_LEAKS
vlc_mutex_lock( &lock ); vlc_mutex_lock( &lock );
if( --refs == 0 )
xmlCleanupParser(); xmlCleanupParser();
vlc_mutex_unlock( &lock ); vlc_mutex_unlock( &lock );
#endif
VLC_UNUSED(p_this); VLC_UNUSED(p_this);
return; return;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment