summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS4
-rw-r--r--ext/libxml/libxml.c3
-rw-r--r--ext/soap/php_xml.c3
3 files changed, 10 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 9c2af91088..f509855111 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,9 @@
PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 20??, PHP 5.3.2
+- Added LIBXML_PARSEHUGE constant to overrides the maximum text size of a
+ single text node when using libxml2.7.3+. (Kalle)
+
- Upgraded bundled sqlite to version 3.6.20. (Ilia)
- Upgraded bundled PCRE to version 8.00. (Scott)
@@ -81,6 +84,7 @@ PHP NEWS
property in base class). (Felipe)
- Fixed bug #49677 (ini parser crashes with apache2 and using ${something}
ini variables). (Jani)
+- Fixed bug #49660 (libxml 2.7.3+ limits text nodes to 10MB). (Felipe)
- Fixed bug #49647 (DOMUserData does not exist). (Rob)
- Fixed bug #49521 (PDO fetchObject sets values before calling constructor).
(Pierrick)
diff --git a/ext/libxml/libxml.c b/ext/libxml/libxml.c
index 40f425760f..2ea3000072 100644
--- a/ext/libxml/libxml.c
+++ b/ext/libxml/libxml.c
@@ -622,6 +622,9 @@ static PHP_MINIT_FUNCTION(libxml)
REGISTER_LONG_CONSTANT("LIBXML_COMPACT", XML_PARSE_COMPACT, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("LIBXML_NOXMLDECL", XML_SAVE_NO_DECL, CONST_CS | CONST_PERSISTENT);
#endif
+#if LIBXML_VERSION >= 20703
+ REGISTER_LONG_CONSTANT("LIBXML_PARSEHUGE", XML_PARSE_HUGE, CONST_CS | CONST_PERSISTENT);
+#endif
REGISTER_LONG_CONSTANT("LIBXML_NOEMPTYTAG", LIBXML_SAVE_NOEMPTYTAG, CONST_CS | CONST_PERSISTENT);
/* Error levels */
diff --git a/ext/soap/php_xml.c b/ext/soap/php_xml.c
index 4bc14a46d3..30d34535e6 100644
--- a/ext/soap/php_xml.c
+++ b/ext/soap/php_xml.c
@@ -138,6 +138,9 @@ xmlDocPtr soap_xmlParseMemory(const void *buf, size_t buf_size)
ctxt->sax->warning = NULL;
ctxt->sax->error = NULL;
/*ctxt->sax->fatalError = NULL;*/
+#if LIBXML_VERSION >= 20703
+ ctxt->options |= XML_PARSE_HUGE;
+#endif
xmlParseDocument(ctxt);
if (ctxt->wellFormed) {
ret = ctxt->myDoc;