Edit report at https://bugs.php.net/bug.php?id=49660&edit=1
ID: 49660 Updated by: g...@php.net Reported by: sta at netimage dot dk Summary: libxml 2.7.3+ limits text nodes to 10MB -Status: Open +Status: Closed Type: Bug Package: SOAP related Operating System: FreeBSD 7.1 PHP Version: * -Assigned To: +Assigned To: gooh Block user comment: N Private report: N Previous Comments: ------------------------------------------------------------------------ [2009-12-01 11:15:18] fel...@php.net "Added LIBXML_PARSEHUGE constant to overrides the maximum text size of a single text node when using libxml2.7.3+." ------------------------------------------------------------------------ [2009-12-01 02:06:10] fel...@php.net This bug has been fixed in SVN. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. ------------------------------------------------------------------------ [2009-12-01 02:05:29] s...@php.net Automatic comment from SVN on behalf of felipe Revision: http://svn.php.net/viewvc/?view=revision&revision=291533 Log: - Fixed bug #49660 (libxml 2.7.3+ limits text nodes to 10MB). (Felipe) - Added LIBXML_PARSEHUGE constant to overrides the maximum text size of a single text node when using libxml2.7.3+. (Kalle) [DOC] ------------------------------------------------------------------------ [2009-09-28 11:31:14] sta at netimage dot dk Hi Kalle. Thanks for replying so soon. Your patch does fix the issue when loading directly with simplexml_load_file('file.xml', 'SimpleXMLElement', LIBXML_PARSEHUGE); However the error was not originally encountered using simplexml, but using SoapClient - and there does not seem to be a way to pass libxml-options to SoapClient. So as far as I can tell, the problem remains when using SoapClient. /Thing ------------------------------------------------------------------------ [2009-09-26 12:12:14] ka...@php.net I guess we could expose the constant value from ext/libxml if available like: Index: libxml.c =================================================================== --- libxml.c (revision 288659) +++ libxml.c (working copy) @@ -622,6 +622,9 @@ 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 */ Does this work for you when passing it to SimpleXML's $option parameter? (Patch made against PHP_5_3, but is just a 3 line c/p to other branches) ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=49660 -- Edit this bug report at https://bugs.php.net/bug.php?id=49660&edit=1