[ros-diffs] [cwittich] 38604: update libxml2 to 2.7.2

cwittich at svn.reactos.org cwittich at svn.reactos.org
Tue Jan 6 11:24:27 CET 2009


Author: cwittich
Date: Tue Jan  6 04:24:26 2009
New Revision: 38604

URL: http://svn.reactos.org/svn/reactos?rev=38604&view=rev
Log:
update libxml2 to 2.7.2

Modified:
    trunk/reactos/include/reactos/libs/libxml/xmlsave.h
    trunk/reactos/include/reactos/libs/libxml/xmlversion.h
    trunk/reactos/lib/3rdparty/libxml2/ChangeLog
    trunk/reactos/lib/3rdparty/libxml2/HTMLparser.c
    trunk/reactos/lib/3rdparty/libxml2/NEWS
    trunk/reactos/lib/3rdparty/libxml2/config.h.in
    trunk/reactos/lib/3rdparty/libxml2/configure
    trunk/reactos/lib/3rdparty/libxml2/configure.in
    trunk/reactos/lib/3rdparty/libxml2/dict.c
    trunk/reactos/lib/3rdparty/libxml2/libxml2.spec
    trunk/reactos/lib/3rdparty/libxml2/parser.c
    trunk/reactos/lib/3rdparty/libxml2/runxmlconf.c
    trunk/reactos/lib/3rdparty/libxml2/xmlreader.c
    trunk/reactos/lib/3rdparty/libxml2/xmlsave.c

Modified: trunk/reactos/include/reactos/libs/libxml/xmlsave.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libxml/xmlsave.h?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/include/reactos/libs/libxml/xmlsave.h [iso-8859-1] (original)
+++ trunk/reactos/include/reactos/libs/libxml/xmlsave.h [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -30,7 +30,10 @@
     XML_SAVE_FORMAT     = 1<<0,	/* format save output */
     XML_SAVE_NO_DECL    = 1<<1,	/* drop the xml declaration */
     XML_SAVE_NO_EMPTY	= 1<<2, /* no empty tags */
-    XML_SAVE_NO_XHTML	= 1<<3  /* disable XHTML1 specific rules */
+    XML_SAVE_NO_XHTML	= 1<<3, /* disable XHTML1 specific rules */
+    XML_SAVE_XHTML	= 1<<4, /* force XHTML1 specific rules */
+    XML_SAVE_AS_XML     = 1<<5, /* force XML serialization on HTML doc */
+    XML_SAVE_AS_HTML    = 1<<6  /* force HTML serialization on XML doc */
 } xmlSaveOption;
 
 

Modified: trunk/reactos/include/reactos/libs/libxml/xmlversion.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libxml/xmlversion.h?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/include/reactos/libs/libxml/xmlversion.h [iso-8859-1] (original)
+++ trunk/reactos/include/reactos/libs/libxml/xmlversion.h [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -29,21 +29,21 @@
  *
  * the version string like "1.2.3"
  */
-#define LIBXML_DOTTED_VERSION "2.7.1"
+#define LIBXML_DOTTED_VERSION "2.7.2"
 
 /**
  * LIBXML_VERSION:
  *
  * the version number: 1.2.3 value is 10203
  */
-#define LIBXML_VERSION 20701
+#define LIBXML_VERSION 20702
 
 /**
  * LIBXML_VERSION_STRING:
  *
  * the version number string, 1.2.3 value is "10203"
  */
-#define LIBXML_VERSION_STRING "20701"
+#define LIBXML_VERSION_STRING "20702"
 
 /**
  * LIBXML_VERSION_EXTRA:
@@ -58,7 +58,7 @@
  * Macro to check that the libxml version in use is compatible with
  * the version the software has been compiled against
  */
-#define LIBXML_TEST_VERSION xmlCheckVersion(20701);
+#define LIBXML_TEST_VERSION xmlCheckVersion(20702);
 
 #ifndef VMS
 #if 0

Modified: trunk/reactos/lib/3rdparty/libxml2/ChangeLog
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/ChangeLog?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/ChangeLog [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/ChangeLog [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -1,3 +1,39 @@
+Fri Oct  3 09:43:45 CEST 2008 Daniel Veillard <daniel at veillard.com>
+
+	* configure.in doc/* NEWS: preparing the release of 2.7.2
+	* dict.c: fix the Solaris portability issue
+	* parser.c: additional cleanup on #554660 fix
+	* test/ent13 result/ent13* result/noent/ent13*: added the
+	  example in the regression test suite.
+	* HTMLparser.c: handle leading BOM in htmlParseElement()
+
+Thu Oct  2 22:53:39 CEST 2008 Daniel Veillard <daniel at veillard.com>
+
+	* parser.c: fix a nasty bug introduced when cleaning up
+	  entities processing in 2.7.x , fixes #554660
+
+Thu Sep 25 18:04:20 CEST 2008 Daniel Veillard <daniel at veillard.com>
+
+	* HTMLparser.c: fix an HTML parsing error on large data sections
+	  reported by Mike Day
+	* test/HTML/utf8bug.html result/HTML/utf8bug.html.err
+	  result/HTML/utf8bug.html.sax result/HTML/utf8bug.html: add the
+	  reproducer to the test suite
+
+Thu Sep 25 17:35:57 CEST 2008 Daniel Veillard <daniel at veillard.com>
+
+	* runxmlconf.c: fix compilation if XPath is not included
+
+Thu Sep 25 16:54:04 CEST 2008 Daniel Veillard <daniel at veillard.com>
+
+	* xmlreader.c: patch from Riccardo Scussat fixing custom error
+	  handlers problems.
+
+Thu Sep 25 16:30:11 CEST 2008 Daniel Veillard <daniel at veillard.com>
+
+	* include/libxml/xmlsave.h xmlsave.c: new options to serialize
+	  as XML/HTML/XHTML and restore old entry point behaviours
+
 Mon Sep  1 16:49:05 CEST 2008 Daniel Veillard <daniel at veillard.com>
 
 	* doc/xml.html doc/news.html configure.in python/setup.py NEWS:

Modified: trunk/reactos/lib/3rdparty/libxml2/HTMLparser.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/HTMLparser.c?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/HTMLparser.c [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/HTMLparser.c [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -2768,6 +2768,7 @@
     xmlChar buf[HTML_PARSER_BIG_BUFFER_SIZE + 5];
     int nbchar = 0;
     int cur, l;
+    int chunk = 0;
 
     SHRINK;
     cur = CUR_CHAR(l);
@@ -2798,6 +2799,12 @@
 	    nbchar = 0;
 	}
 	NEXTL(l);
+        chunk++;
+        if (chunk > HTML_PARSER_BUFFER_SIZE) {
+            chunk = 0;
+            SHRINK;
+            GROW;
+        }
 	cur = CUR_CHAR(l);
 	if (cur == 0) {
 	    SHRINK;
@@ -4113,6 +4120,8 @@
 
 int
 htmlParseDocument(htmlParserCtxtPtr ctxt) {
+    xmlChar start[4];
+    xmlCharEncoding enc;
     xmlDtdPtr dtd;
 
     xmlInitParser();
@@ -4132,6 +4141,23 @@
     if ((ctxt->sax) && (ctxt->sax->setDocumentLocator))
         ctxt->sax->setDocumentLocator(ctxt->userData, &xmlDefaultSAXLocator);
 
+    if ((ctxt->encoding == (const xmlChar *)XML_CHAR_ENCODING_NONE) &&
+        ((ctxt->input->end - ctxt->input->cur) >= 4)) {
+	/*
+	 * Get the 4 first bytes and decode the charset
+	 * if enc != XML_CHAR_ENCODING_NONE
+	 * plug some encoding conversion routines.
+	 */
+	start[0] = RAW;
+	start[1] = NXT(1);
+	start[2] = NXT(2);
+	start[3] = NXT(3);
+	enc = xmlDetectCharEncoding(&start[0], 4);
+	if (enc != XML_CHAR_ENCODING_NONE) {
+	    xmlSwitchEncoding(ctxt, enc);
+	}
+    }
+
     /*
      * Wipe out everything which is before the first '<'
      */
@@ -4151,10 +4177,10 @@
     while (((CUR == '<') && (NXT(1) == '!') &&
             (NXT(2) == '-') && (NXT(3) == '-')) ||
 	   ((CUR == '<') && (NXT(1) == '?'))) {
-        htmlParseComment(ctxt);	   
-        htmlParsePI(ctxt);	   
+        htmlParseComment(ctxt);
+        htmlParsePI(ctxt);
 	SKIP_BLANKS;
-    }	   
+    }
 
 
     /*

Modified: trunk/reactos/lib/3rdparty/libxml2/NEWS
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/NEWS?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/NEWS [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/NEWS [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -15,6 +15,17 @@
 to the SVN at 
 http://svn.gnome.org/viewcvs/libxml2/trunk/
  code base.Here is the list of public releases:
+2.7.2: Oct 3 2008:
+   - Portability fix: fix solaris compilation problem, fix compilation
+        if XPath is not configured in
+   - Bug fixes: nasty entity bug introduced in 2.7.0, restore old behaviour
+        when saving an HTML doc with an xml dump function, HTML UTF-8 parsing
+        bug, fix reader custom error handlers (Riccardo Scussat)
+    
+   - Improvement: xmlSave options for more flexibility to save as
+        XML/HTML/XHTML, handle leading BOM in HTML documents
+
+
 2.7.1: Sep 1 2008:
    - Portability fix: Borland C fix (Moritz Both)
    - Bug fixes: python serialization wrappers, XPath QName corner

Modified: trunk/reactos/lib/3rdparty/libxml2/config.h.in
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/config.h.in?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/config.h.in [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/config.h.in [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -85,6 +85,9 @@
 /* Define to 1 if you have the <inttypes.h> header file. */
 #undef HAVE_INTTYPES_H
 
+/* Define to 1 if you have the <inttypes.h.h> header file. */
+#undef HAVE_INTTYPES_H_H
+
 /* Define if isinf is there */
 #undef HAVE_ISINF
 

Modified: trunk/reactos/lib/3rdparty/libxml2/configure
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/configure?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/configure [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/configure [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -2191,7 +2191,7 @@
 
 LIBXML_MAJOR_VERSION=2
 LIBXML_MINOR_VERSION=7
-LIBXML_MICRO_VERSION=1
+LIBXML_MICRO_VERSION=2
 LIBXML_MICRO_VERSION_SUFFIX=
 LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
 LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
@@ -22663,6 +22663,286 @@
 done
 
 
+for ac_header in stdint.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+else
+  # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_header_compiler=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then
+  ac_header_preproc=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So?  What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+  yes:no: )
+    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+    ac_header_preproc=yes
+    ;;
+  no:yes:* )
+    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+    ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  eval "$as_ac_Header=\$ac_header_preproc"
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+for ac_header in inttypes.h.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+else
+  # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_header_compiler=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null && {
+	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       }; then
+  ac_header_preproc=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+  ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So?  What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+  yes:no: )
+    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+    ac_header_preproc=yes
+    ;;
+  no:yes:* )
+    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+    ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  eval "$as_ac_Header=\$ac_header_preproc"
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
 for ac_header in time.h
 do
 as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
@@ -26382,7 +26662,7 @@
 { echo "$as_me:$LINENO: checking for type of socket length (socklen_t)" >&5
 echo $ECHO_N "checking for type of socket length (socklen_t)... $ECHO_C" >&6; }
 cat > conftest.$ac_ext <<EOF
-#line 26385 "configure"
+#line 26665 "configure"
 #include "confdefs.h"
 
 #include <stddef.h>
@@ -26393,7 +26673,7 @@
 (void)getsockopt (1, 1, 1, NULL, (socklen_t *)NULL)
 ; return 0; }
 EOF
-if { (eval echo configure:26396: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; _out=`eval $ac_compile 2>&1` && test "x$_out" = x; }; then
+if { (eval echo configure:26676: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; _out=`eval $ac_compile 2>&1` && test "x$_out" = x; }; then
   rm -rf conftest*
 
   { echo "$as_me:$LINENO: result: socklen_t *" >&5
@@ -26405,7 +26685,7 @@
   rm -rf conftest*
 
   cat > conftest.$ac_ext <<EOF
-#line 26408 "configure"
+#line 26688 "configure"
 #include "confdefs.h"
 
 #include <stddef.h>
@@ -26416,7 +26696,7 @@
 (void)getsockopt (1, 1, 1, NULL, (size_t *)NULL)
 ; return 0; }
 EOF
-if { (eval echo configure:26419: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; _out=`eval $ac_compile 2>&1` && test "x$_out" = x; }; then
+if { (eval echo configure:26699: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; _out=`eval $ac_compile 2>&1` && test "x$_out" = x; }; then
   rm -rf conftest*
 
     { echo "$as_me:$LINENO: result: size_t *" >&5
@@ -26428,7 +26708,7 @@
   rm -rf conftest*
 
     cat > conftest.$ac_ext <<EOF
-#line 26431 "configure"
+#line 26711 "configure"
 #include "confdefs.h"
 
 #include <stddef.h>
@@ -26439,7 +26719,7 @@
 (void)getsockopt (1, 1, 1, NULL, (int *)NULL)
 ; return 0; }
 EOF
-if { (eval echo configure:26442: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; _out=`eval $ac_compile 2>&1` && test "x$_out" = x; }; then
+if { (eval echo configure:26722: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; _out=`eval $ac_compile 2>&1` && test "x$_out" = x; }; then
   rm -rf conftest*
 
       { echo "$as_me:$LINENO: result: int *" >&5

Modified: trunk/reactos/lib/3rdparty/libxml2/configure.in
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/configure.in?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/configure.in [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/configure.in [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -5,7 +5,7 @@
 
 LIBXML_MAJOR_VERSION=2
 LIBXML_MINOR_VERSION=7
-LIBXML_MICRO_VERSION=1
+LIBXML_MICRO_VERSION=2
 LIBXML_MICRO_VERSION_SUFFIX=
 LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
 LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
@@ -378,6 +378,8 @@
 AC_CHECK_HEADERS([stdarg.h])
 AC_CHECK_HEADERS([sys/stat.h])
 AC_CHECK_HEADERS([sys/types.h])
+AC_CHECK_HEADERS([stdint.h])
+AC_CHECK_HEADERS([inttypes.h.h])
 AC_CHECK_HEADERS([time.h])
 AC_CHECK_HEADERS([ansidecl.h])
 AC_CHECK_HEADERS([ieeefp.h])

Modified: trunk/reactos/lib/3rdparty/libxml2/dict.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/dict.c?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/dict.c [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/dict.c [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -22,8 +22,12 @@
 #include <string.h>
 #ifdef HAVE_STDINT_H
 #include <stdint.h>
+#else
+#ifdef HAVE_INTTYPES_H
+#include <inttypes.h>
 #elif defined(WIN32)
 typedef unsigned __int32 uint32_t;
+#endif
 #endif
 #include <libxml/tree.h>
 #include <libxml/dict.h>

Modified: trunk/reactos/lib/3rdparty/libxml2/libxml2.spec
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/libxml2.spec?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/libxml2.spec [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/libxml2.spec [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -1,6 +1,6 @@
 Summary: Library providing XML and HTML support
 Name: libxml2
-Version: 2.7.1
+Version: 2.7.2
 Release: 1
 License: MIT
 Group: Development/Libraries
@@ -128,6 +128,6 @@
 %doc doc/python.html
 
 %changelog
-* Mon Sep  1 2008 Daniel Veillard <veillard at redhat.com>
-- upstream release 2.7.1 see http://xmlsoft.org/news.html
+* Fri Oct  3 2008 Daniel Veillard <veillard at redhat.com>
+- upstream release 2.7.2 see http://xmlsoft.org/news.html
 

Modified: trunk/reactos/lib/3rdparty/libxml2/parser.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/parser.c?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/parser.c [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/parser.c [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -7215,6 +7215,7 @@
     }
     if (*ptr != ';') {
 	xmlFatalErr(ctxt, XML_ERR_ENTITYREF_SEMICOL_MISSING, NULL);
+        xmlFree(name);
 	*str = ptr;
 	return(NULL);
     }
@@ -7225,8 +7226,11 @@
      * Predefined entites override any extra definition
      */
     ent = xmlGetPredefinedEntity(name);
-    if (ent != NULL)
+    if (ent != NULL) {
+        xmlFree(name);
+        *str = ptr;
         return(ent);
+    }
 
     /*
      * Increate the number of entity references parsed

Modified: trunk/reactos/lib/3rdparty/libxml2/runxmlconf.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/runxmlconf.c?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/runxmlconf.c [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/runxmlconf.c [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -11,6 +11,8 @@
 #else
 #include <stdio.h>
 #endif
+
+#ifdef LIBXML_XPATH_ENABLED
 
 #if !defined(_WIN32) || defined(__CYGWIN__)
 #include <unistd.h>
@@ -605,3 +607,11 @@
         fclose(logfile);
     return(ret);
 }
+
+#else /* ! LIBXML_XPATH_ENABLED */
+#include <stdio.h>
+int
+main(int argc, char **argv) {
+    fprintf(stderr, "%s need XPath support\n", argv[0]);
+}
+#endif

Modified: trunk/reactos/lib/3rdparty/libxml2/xmlreader.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/xmlreader.c?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/xmlreader.c [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/xmlreader.c [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -42,6 +42,27 @@
 #endif
 #ifdef LIBXML_PATTERN_ENABLED
 #include <libxml/pattern.h>
+#endif
+
+#define MAX_ERR_MSG_SIZE 64000
+
+/*
+ * The following VA_COPY was coded following an example in
+ * the Samba project.  It may not be sufficient for some
+ * esoteric implementations of va_list (i.e. it may need
+ * something involving a memcpy) but (hopefully) will be
+ * sufficient for libxml2.
+ */
+#ifndef VA_COPY
+  #ifdef HAVE_VA_COPY
+    #define VA_COPY(dest, src) va_copy(dest, src)
+  #else
+    #ifdef HAVE___VA_COPY
+      #define VA_COPY(dest,src) __va_copy(dest, src)
+    #else
+      #define VA_COPY(dest,src) (dest) = (src)
+    #endif
+  #endif
 #endif
 
 /* #define DEBUG_CALLBACKS */
@@ -4500,30 +4521,32 @@
 /* helper to build a xmlMalloc'ed string from a format and va_list */
 static char *
 xmlTextReaderBuildMessage(const char *msg, va_list ap) {
-    int size;
+    int size = 0;
     int chars;
     char *larger;
-    char *str;
-
-    str = (char *) xmlMallocAtomic(150);
-    if (str == NULL) {
-	xmlGenericError(xmlGenericErrorContext, "xmlMalloc failed !\n");
-        return NULL;
-    }
-
-    size = 150;
+    char *str = NULL;
+    va_list aq;
 
     while (1) {
-        chars = vsnprintf(str, size, msg, ap);
-        if ((chars > -1) && (chars < size))
+        VA_COPY(aq, ap);
+        chars = vsnprintf(str, size, msg, aq);
+        va_end(aq);
+        if (chars < 0) {
+	    xmlGenericError(xmlGenericErrorContext, "vsnprintf failed !\n");
+	    if (str) 
+	    	xmlFree(str);
+	    return NULL;  
+	}
+	if ((chars < size) || (size == MAX_ERR_MSG_SIZE))
             break;
-        if (chars > -1)
-            size += chars + 1;
-        else
-            size += 100;
+        if (chars < MAX_ERR_MSG_SIZE)
+        	size = chars + 1;
+	else
+		size = MAX_ERR_MSG_SIZE;
         if ((larger = (char *) xmlRealloc(str, size)) == NULL) {
 	    xmlGenericError(xmlGenericErrorContext, "xmlRealloc failed !\n");
-            xmlFree(str);
+	    if (str)
+            	xmlFree(str);
             return NULL;
         }
         str = larger;

Modified: trunk/reactos/lib/3rdparty/libxml2/xmlsave.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/xmlsave.c?rev=38604&r1=38603&r2=38604&view=diff
==============================================================================
--- trunk/reactos/lib/3rdparty/libxml2/xmlsave.c [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/libxml2/xmlsave.c [iso-8859-1] Tue Jan  6 04:24:26 2009
@@ -757,8 +757,14 @@
 	return;
     }
 #ifdef LIBXML_HTML_ENABLED
-    if ((cur->type != XML_NAMESPACE_DECL) && (cur->doc != NULL) &&
-        (cur->doc->type == XML_HTML_DOCUMENT_NODE)) {
+    if (ctxt->options & XML_SAVE_XHTML) {
+        xhtmlNodeDumpOutput(ctxt, cur);
+        return;
+    }
+    if (((cur->type != XML_NAMESPACE_DECL) && (cur->doc != NULL) &&
+         (cur->doc->type == XML_HTML_DOCUMENT_NODE) &&
+         ((ctxt->options & XML_SAVE_AS_XML) == 0)) ||
+        (ctxt->options & XML_SAVE_AS_HTML)) {
 	htmlNodeDumpOutputInternal(ctxt, cur);
 	return;
     }
@@ -953,7 +959,10 @@
 		     xmlGetCharEncodingName((xmlCharEncoding) cur->charset);
     }
 
-    if (cur->type == XML_HTML_DOCUMENT_NODE) {
+    if (((cur->type == XML_HTML_DOCUMENT_NODE) &&
+         ((ctxt->options & XML_SAVE_AS_XML) == 0) &&
+         ((ctxt->options & XML_SAVE_XHTML) == 0)) ||
+        (ctxt->options & XML_SAVE_AS_HTML)) {
 #ifdef LIBXML_HTML_ENABLED
         if (encoding != NULL)
 	    htmlSetMetaEncoding(cur, (const xmlChar *) encoding);
@@ -981,7 +990,9 @@
 #else
         return(-1);
 #endif
-    } else if (cur->type == XML_DOCUMENT_NODE) {
+    } else if ((cur->type == XML_DOCUMENT_NODE) ||
+               (ctxt->options & XML_SAVE_AS_XML) ||
+               (ctxt->options & XML_SAVE_XHTML)) {
 	enc = xmlParseCharEncoding((const char*) encoding);
 	if ((encoding != NULL) && (oldctxtenc == NULL) &&
 	    (buf->encoder == NULL) && (buf->conv == NULL) &&
@@ -1032,6 +1043,8 @@
 	}
 
 #ifdef LIBXML_HTML_ENABLED
+        if (ctxt->options & XML_SAVE_XHTML)
+            is_xhtml = 1;
 	if ((ctxt->options & XML_SAVE_NO_XHTML) == 0) {
 	    dtd = xmlGetIntSubset(cur);
 	    if (dtd != NULL) {
@@ -2123,6 +2136,7 @@
     ctxt.format = format;
     ctxt.encoding = (const xmlChar *) encoding;
     xmlSaveCtxtInit(&ctxt);
+    ctxt.options |= XML_SAVE_AS_XML;
 
 #ifdef LIBXML_HTML_ENABLED
     dtd = xmlGetIntSubset(doc);
@@ -2208,6 +2222,7 @@
     ctxt.format = format;
     ctxt.encoding = (const xmlChar *) txt_encoding;
     xmlSaveCtxtInit(&ctxt);
+    ctxt.options |= XML_SAVE_AS_XML;
     xmlDocContentDumpOutput(&ctxt, out_doc);
     xmlOutputBufferFlush(out_buff);
     if (out_buff->conv != NULL) {
@@ -2326,6 +2341,7 @@
     ctxt.format = format;
     ctxt.encoding = (const xmlChar *) encoding;
     xmlSaveCtxtInit(&ctxt);
+    ctxt.options |= XML_SAVE_AS_XML;
     xmlDocContentDumpOutput(&ctxt, cur);
 
     ret = xmlOutputBufferClose(buf);
@@ -2375,6 +2391,7 @@
     ctxt.format = 0;
     ctxt.encoding = (const xmlChar *) encoding;
     xmlSaveCtxtInit(&ctxt);
+    ctxt.options |= XML_SAVE_AS_XML;
     xmlDocContentDumpOutput(&ctxt, cur);
     ret = xmlOutputBufferClose(buf);
     return(ret);
@@ -2414,6 +2431,7 @@
     ctxt.format = format;
     ctxt.encoding = (const xmlChar *) encoding;
     xmlSaveCtxtInit(&ctxt);
+    ctxt.options |= XML_SAVE_AS_XML;
     xmlDocContentDumpOutput(&ctxt, cur);
     ret = xmlOutputBufferClose(buf);
     return (ret);
@@ -2468,6 +2486,7 @@
     ctxt.format = format;
     ctxt.encoding = (const xmlChar *) encoding;
     xmlSaveCtxtInit(&ctxt);
+    ctxt.options |= XML_SAVE_AS_XML;
 
     xmlDocContentDumpOutput(&ctxt, cur);
 



More information about the Ros-diffs mailing list