parser.c


Log

Author Commit Date CI Message
Daniel Veillard f8e3db04 2012-09-11T13:26:36 Big space and tab cleanup Remove all space before tabs and space and tabs at end of lines.
Daniel Veillard 28f5e1a2 2012-09-04T11:18:39 Fix potential crash on entities errors Related to https://bugs.launchpad.net/lxml/+bug/502959 Basically the core of the issue is that if an entity references another entity, then in case we are replacing entities content, we should always do so by copying the referenced content as long as the reference is done within the entity. Otherwise, if for some reason there is a later parsing error that entity content may be freed. Complex scenario exposed by command: thinkpad:~/XML/diveintopython-5.4/xml -> valgrind --db-attach=yes ../../xmllint --loaddtd --noout --noent diveintopython.xml Document references &a; a references &b; we references b content directly in by linking in the a content a has an error further down we free a, freeing the chunk from b Document references &b; after &a; we try to copy b content, but it was freed already => segfault * parser.c: never reference directly entity content without copying if we aren't in the document main entity
Daniel Veillard 1f972e9f 2012-08-15T10:16:37 Cleanup some of the parser code Prefetching assumptions about the amount of data read in GROW should be backed up with test for 0 termination when at the end of the buffer.
Daniel Veillard 968a03a2 2012-08-13T12:41:33 Add support for big line numbers in error reporting Fix the lack of line number as reported by Johan Corveleyn <jcorvel@gmail.com> * parser.c include/libxml/parser.h: add an XML_PARSE_BIG_LINES parser option not switch on by default, it's an opt-in * SAX2.c: if XML_PARSE_BIG_LINES is set store the long line numbers in the psvi field of text nodes * tree.c: expand xmlGetLineNo to extract those informations, also make sure we can't fail on recursive behaviour * error.c: in __xmlRaiseError, if a node is provided, call xmlGetLineNo() if we can't get a valid line number. * xmllint.c: switch on XML_PARSE_BIG_LINES in xmllint
Daniel Veillard 5353bbf7 2012-08-03T12:03:31 More fixups on the push parser behaviour
Daniel Veillard 2b52aa00 2012-07-31T10:53:47 Strengthen behaviour of the push parser in problematic situations Implement the maximum lookahead stategy, and fix some handling of DTD to speed up processing.
Daniel Veillard e7bf892d 2012-07-30T20:09:25 Improve error reporting on parser errors The extra string was being dismissed when provided. * parser.c: handle bot case properly * result/: this changes a few error reports
Daniel Veillard 48b4cdde 2012-07-30T16:16:04 Enforce XML_PARSER_EOF state handling through the parser That condition is one raised when the parser should positively stop processing further even to report errors. Best is to test is after most GROW call especially within loops
Daniel Veillard 0df83cae 2012-07-30T15:41:10 Fixup limits parser
Daniel Veillard 52d8ade7 2012-07-30T10:08:45 Introduce some default parser limits Those can be overrided by the XML_PARSE_HUGE option, they are just default limits for Name lenght, dictionary size limits and maximum amount of parser lookup. * include/libxml/parserInternals.h: define the limits * include/libxml/xmlerror.h: add a new error * parser.c parserInternals.c: implements the new limits
Daniel Veillard f572a78d 2012-07-19T20:36:25 More avoid quadratic behaviour
Daniel Veillard 51304816 2012-07-19T20:34:26 Impose a reasonable limit on PI size Unless the XML_PARSE_HUGE option is given to the parser, the value is XML_MAX_TEXT_LENGTH, i.e. the same than for a text node within content. Also cleanup some unsigned int used for memory size.
Daniel Veillard 65686451 2012-07-19T18:25:01 Avoid quadratic behaviour in some push parsing cases avoid rescanning over and over a very long input, just check the incoming chunks
Daniel Veillard 58f73aca 2012-07-19T11:58:47 Impose a reasonable limit on comment size Unless the XML_PARSE_HUGE option is given to the parser, the value is XML_MAX_TEXT_LENGTH, i.e. the same than for a text node within content. Also cleanup some unsigned int used for memory size.
Daniel Veillard e17db994 2012-07-19T11:25:16 Impose a reasonable limit on attribute size Unless the XML_PARSE_HUGE option is given to the parser, the value is XML_MAX_TEXT_LENGTH, i.e. the same than for a text node within content.
Daniel Veillard 00ac0d3b 2012-07-16T18:03:01 More cleanups for input/buffers code When calling xmlParserInputBufferPush, the buffer may be reallocated and at the input level the pointers for base, cur and end need to be reevaluated. * buf.c buf.h: add two new functions, one to get the base from the input of the buffer, and another one to reset the pointers based on the cur and base inded * HTMLparser.c parser.c: cleanup to use the new helper functions as well as making sure size_t is used for the indexes computations
Daniel Veillard 61551a1e 2012-07-16T16:28:47 Cleanup function xmlBufResetInput() to set input from Buffer This was scattered in a number of modules, xmlParserInputPtr have usually their base, cur and end pointer set from an xmlBuf used as input. * buf.c buf.h: add a new function implementing this setup * parser.c HTMLparser.c catalog.c parserInternals.c xmlreader.c use the new function instead of digging into the buffer in all those modules
Daniel Veillard 768eb3b8 2012-07-16T14:19:49 Convert XML parser to the new input buffers The main changes are when the internal of the buffers structure were adressed directly, we now use routines coming from buf.h The routine xmlParserInputRead() which wasn't used anywhere is deprecated too.
Daniel Veillard 4629ee02 2012-07-23T14:15:40 Do not fetch external parsed entities Unless explicietely asked for when validating or replacing entities with their value. Problem pointed out by Tom Lane <tgl@redhat.com> * parser.c: do not load external parsed entities unless needed * test/errors/extparsedent.xml result/errors/extparsedent.xml*: add a regression test to avoid change of the behaviour in the future
Daniel Veillard 459eeb9d 2012-07-17T16:19:17 Fix parser local buffers size problems
Daniel Veillard 379ebc1d 2012-05-18T15:41:31 Cleanup on randomization tsan reported that rand() is not thread safe, so create a thread safe wrapper, use rand_r() if available. Consolidate the function, initialization and cleanup in dict.c and make sure it is initialized in xmlInitParser()
Daniel Veillard ed35d3d7 2012-05-11T10:52:27 Fix an uninitialized variable use When compiled without SAX1 support
Lin Yi-Li 24464be6 2012-05-10T16:14:55 Avoid memory leak if xmlParserInputBufferCreateIO fails For https://bugzilla.gnome.org/show_bug.cgi?id=643949 In case of error on an IO creation input the given context is terminated with the given close function, except if the error happened in xmlParserInputBufferCreateIO. This can lead to a resource leak which is fixed by this patch.
Bryan Henderson 8658d27d 2012-05-08T16:39:05 wrong message for double hyphen in comment XML error The error message when you have a double hyphen in a comment is "comment not terminated" and should be "double hyphen in comment".
Daniel Veillard 288bb627 2012-05-07T15:01:29 Fix an error in comment nsWarn handler is not about parser fatal errors
Daniel Veillard 4aa68abb 2012-04-02T17:50:54 Try to fix a problem with entities in SAX mode this is a problem which hit the raptor code and that small patch should be a reliable workaround
Anders F Bjorklund eae52617 2011-09-18T16:59:13 add lzma compression support
Daniel Veillard 5bd3c061 2011-12-16T18:53:35 Fix an allocation error when copying entities
Chris Evans 77404b8b 2011-12-14T16:18:25 Make sure the parser returns when getting a Stop order patch backported from chromiun bug fixes, assuming author is Chris
Xia Xinfeng 5825ebb2 2011-11-10T13:50:22 Fix some potential problems on reallocation failures(parser.c) This problem is the same as d7958b21e7f8c447a26bb2436f08402b2c308be4. The operation "ctxt->nameMax * = 2;" should be placed after the function call of xmlRealloc().
Daniel Veillard 4c4653e5 2011-06-05T11:29:29 Add exception for new W3C PI xml-model
Daniel Veillard c62efc84 2011-05-16T16:03:50 Add options to ignore the internal encoding For both XML and HTML, the document can provide an encoding either in XMLDecl in XML, or as a meta element in HTML head. This adds options to ignore those encodings if the encoding is known in advace for example if the content had been converted before being passed to the parser. * parser.c include/libxml/parser.h: add XML_PARSE_IGNORE_ENC option for XML parsing * include/libxml/HTMLparser.h HTMLparser.c: adds the HTML_PARSE_IGNORE_ENC for HTML parsing * HTMLtree.c: fix the handling of saving when an unknown encoding is defined in meta document header * xmllint.c: add a --noenc option to activate the new parser options
Rob Richards c794eb5b 2011-02-18T12:17:17 Fix memory corruption when xmlParseBalancedChunkMemoryInternal is called from xmlParseBalancedChunk
Giuseppe Iuculano 48f7dcb7 2010-11-04T17:42:42 480323 add code to plug in ICU converters by default This is not configured in by default but after some serious massaging incorporate that patch from Chromium/Chrome.
Daniel Veillard 60587d6e 2010-11-04T15:16:27 606592 update language ID parser to RFC 5646 Mostly except we keep support for some older constructs and don't implement extension or privateuse. It's messy because it's used mostly by XSD datatype which itself reference RFC 3066 and suggests a lexical space completely different from what 5646 defines.
Nikolay Sivov e6ad10a5 2010-11-01T11:35:14 Cleanup encoding pointer comparison * parser.c: Compare encoding pointer with a NULL instead of xmlCharEncoding enum value 0 then casted to char * !
Mike Hommey e6f05099 2010-10-15T19:50:03 Fix a potential segfault due to weak symbols on pthreads In xmlInitParser, both __xmlGlobalInitMutexLock and xmlInitGlobals are called before xmlInitThreads, and both use pthread symbols. __xmlGlobalInitMutexLock does so directly, without checking if the symbol exists, and xmlInitGlobals calls xmlNewMutex, which correctly depends on libxml_is_threaded... except libxml_is_threaded is still -1 by then... And again, when releasing the global mutex in __xmlGlobalInitMutexUnlock, the pthread function is called directly. The patch changes the initialization order and make sure the functions are available before calling them
Raul Hudea ba9716a1 2010-03-15T10:13:29 ChunkParser: Incorrect decoding of small xml files if encoding was autodetected, in xmlParseChunk, if initial size is 86 (a chunk in UTF-16 encoding), the code that tries to read only the first line will set the size to 90, which eventually leads to a memmove of 90 bytes (in xmlBufferAdd) which will copy extra random memory bytes, which will make the parser to fail because of these extra bytes.
Daniel Veillard 47cd14e8 2010-02-04T18:49:01 Fix encoding selection for xmlParseInNodeContext * parser.c: use the encoding from the document to parse the chunk
Daniel Veillard 59df7834 2010-02-02T10:24:01 608773 add a missing check in xmlGROW * parser.c: check that the input buffer is non null before dereferencing it
Daniel Veillard e20fb5a7 2010-01-29T20:47:08 Fix xmlParseInNodeContext for HTML content xmlParseInNodeContext notices that the enclosing document is an HTML document, so invoke the HTML parser for that fragment, and the HTML parser finding a "<p>hello world!</p>" document automatically augment it with defaulted <html> and <body>. This defaulting should be turned off in the HTML parser for this to work, but there is no such HTML parser option. There is an htmlOmittedDefaultValue global variable that you could use, but really we should not rely on global variable for processing options anymore, best is to add an HTML_PARSE_NOIMPLIED. * include/libxml/HTMLparser.h: add the HTML_PARSE_NOIMPLIED parser flag * HTMLparser.c: do add implied element if HTML_PARSE_NOIMPLIED is set * parser.c: add HTML_PARSE_NOIMPLIED to options for xmlParseInNodeContext on HTML documents
Nikolay Sivov 73046833 2010-01-19T15:38:05 Correct variable type to unsigned * parser.c: fix len sign in xmlParseChunk()
Daniel Veillard 9d3d141c 2009-09-15T18:41:30 Fix a parsing problem with little data at startup * parser.c: inkscape extension loader (and possibly others) feed data to the parser very slowly, 0 at start, 4 bytes on first GROW and this broke after the fix for https://bugzilla.gnome.org/show_bug.cgi?id=566012 http://git.gnome.org/cgit/libxml2/commit/?id=7e385bd4e28a0cc12b6b26ed178c620e3c3ab8d8 leading to another bug https://bugzilla.redhat.com/show_bug.cgi?id=523002 this detects the situation and GROW when needed for proper processing.
Daniel Veillard 594e5dfb 2009-09-07T14:58:47 Chasing dead assignments reported by clang-scan * SAX2.c dict.c error.c hash.c nanohttp.c parser.c python/libxml.c relaxng.c runtest.c tree.c valid.c xinclude.c xmlregexp.c xmlsave.c xmlschemas.c xpath.c xpointer.c: mostly removing unneded affectations, but this led to a few real bugs and some part not yet understood (relaxng/interleave)
Daniel Veillard d44b9364 2009-09-07T12:15:08 A few more safety cleanup raised by scan * SAX2.c encoding.c parser.c xmlschemas.c: a few more safety checks * relaxng.c: remove an unused intitialization
Daniel Veillard 76d36458 2009-09-07T11:19:33 Fixing assorted potential problems raised by scan * encoding.c parser.c relaxng.c runsuite.c tree.c xmlreader.c xmlschemas.c: nothing really serious but better safe than sorry
Daniel Veillard 15495610 2009-09-05T15:04:41 Potential uninitialized arguments raised by scan * parser.c: ctxt->sax2 is not supposed to change suring parsing but better safe than sorry and initialize prefix and URI used in SAX2 callbacks.
Daniel Veillard 13cee4e3 2009-09-05T14:52:55 Fix a bunch of scan 'dead increments' and cleanup * HTMLparser.c c14n.c debugXML.c entities.c nanohttp.c parser.c testC14N.c uri.c xmlcatalog.c xmllint.c xmlregexp.c xpath.c: fix unused variables, or unneeded increments as well as a couple of space issues * runtest.c: check for NULL before calling unlink()
Daniel Veillard 74eaec14 2009-08-26T15:57:20 502960 provide namespace stack when parsing entity * parser.c: copy the entity stack * SAX2.c: fix the warning message for default entities
Daniel Veillard a6c76a26 2009-08-26T14:37:00 566012 part 2 fix regresion tests and push mode * test/utf16bebom.xml: regression test showed that this test case was broken but previous behaviour would not detect it ! * parser.c: fix 566012 for the push mode of the parser, tricky ! * test/ebcdic_566012.xml result//ebcdic_566012.xml*: add the test to the regression suite
Daniel Veillard 7e385bd4 2009-08-26T11:38:49 566012 autodetected encoding and encoding conflict * encoding.c parser.c parserInternals.c: when we autodetect an encoding but it's actually not completely compatible with the one declared great care must be taken to not convert more than just the first line. Led to some refactoring, more private functions and a bit of cleanup.
Daniel Veillard 283d5027 2009-08-25T17:18:39 587663 Incorrect Attribute-Value Normalization * parser.c: when replacing entities and that the entity is CDATA and reference entities then white space character in replacement text need to be replaced by 0x20 * result/noent/att10: correct the output of the associated regression test
Daniel Veillard 852505b3 2009-08-23T15:44:48 583439 missing line numbers in push mode * parser.c: use the line number stored in the node itself if present for end of tag line error reports
Daniel Veillard 53c32edf 2009-08-21T15:20:55 Rebuilt the API and regenerated docs
Daniel Veillard 8ed1072c 2009-08-20T19:17:36 Add symbol versioning to libxml2 shared libs * libxml2.syms: the symbols with history, going back to 2.4.30 * Makefile.am configure.in: linking flags detection and use * parser.c tree.c valid.c xpointer.c: various cleanup of functions which could be made static or simply discarded, not that many
Daniel Veillard f39eafaa 2009-08-20T19:15:08 Make xmlRecoverDoc const (Martin Trappel) * include/libxml/parser.h parser.c: just make the parameter a const
Daniel Veillard 489f9671 2009-08-10T16:49:30 Fix a couple of problems in the parser * parser.c: a couple of nasty bugs CVE-2009-2414 and CVE-2009-2416
Daniel Veillard 48247b4f 2009-07-10T16:12:46 Fix a regression in streaming entities support * parser.c: fix a regression in entity parsing when using the reader introduced because we were not reusing _private on entities parsing context
Daniel Veillard 44af232c 2009-07-09T09:02:11 Fix ChangeLog merge conflict
Daniel Veillard ab2a763d 2009-07-09T08:45:03 A bit of cleanups * tree.c: avoid calling xmlAddID with NULL values * parser.c: add a few xmlInitParser in some entry points
Rob Richards 798743a4 2009-06-19T13:54:25 * parser.c: use options from current parser context when creating a parser context within xmlParseCtxtExternalEntity * xmlwriter.c: fix error message when unable to create output file
Daniel Veillard bccae2d2 2009-06-04T11:22:45 * c14n.c debugXML.c doc/examples/io2.c parser.c schematron.c valid.c xmlschemas.c xmlwriter.c xpath.c: use %s to printf string patch by Christian Persch, fixes #581612
Daniel Veillard 7dd7080a 2009-06-04T11:08:39 * parser.c threads.c: change the threading initialization sequence as suggested by Igor Novoseltsev to avoid crash if xmlInitParser() is called from a thread which is not the main one, should fix #584605 daniel
Rob Richards 2c8c772d 2009-04-29T10:09:05 * parser.c: do not set error code in xmlNsWarn
Rob Richards 9c0aa472 2009-03-26T18:10:19 use options from current parser context when creating an entity parser * parser.c: use options from current parser context when creating an entity parser context svn path=/trunk/; revision=3825
Daniel Veillard c6561463 2009-03-25T10:22:31 hide the nbParse* variables used for debugging as pointed by Mike Hommey * parser.c: hide the nbParse* variables used for debugging as pointed by Mike Hommey daniel svn path=/trunk/; revision=3823
Daniel Veillard 01101204 2009-02-21T09:22:04 more warnings about xmlCleanupThreads and xmlCleanupParser to avoid * threads.c parser.c: more warnings about xmlCleanupThreads and xmlCleanupParser to avoid troubles like #571409 daniel svn path=/trunk/; revision=3818
Rob Richards b9ed017d 2009-01-05T17:28:50 add XML_PARSE_OLDSAX parser option to enable pre 2.7 SAX behavior. * include/libxml/parser.h parser.c: add XML_PARSE_OLDSAX parser option to enable pre 2.7 SAX behavior. svn path=/trunk/; revision=3807
Daniel Veillard 1dc9feb0 2008-11-17T15:59:21 fix for CVE-2008-4226, a memory overflow when building gigantic text * SAX2.c parser.c: fix for CVE-2008-4226, a memory overflow when building gigantic text nodes, and a bit of cleanup to better handled out of memory problem in that code. * tree.c: fix for CVE-2008-4225, lack of testing leads to a busy loop test assuming one have enough core memory. Daniel svn path=/trunk/; revision=3803
Daniel Veillard 7f4547cd 2008-10-03T07:58:23 preparing the release of 2.7.2 fix the Solaris portability issue * 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() Daniel svn path=/trunk/; revision=3799
Daniel Veillard 34a7fc38 2008-10-02T20:55:10 fix a nasty bug introduced when cleaning up entities processing in 2.7.x , * parser.c: fix a nasty bug introduced when cleaning up entities processing in 2.7.x , fixes #554660 Daniel svn path=/trunk/; revision=3798
Daniel Veillard da3fee40 2008-09-01T13:08:57 Borland C fix from Moritz Both regenerate, workaround a problem for buffer * trionan.c: Borland C fix from Moritz Both * testapi.c: regenerate, workaround a problem for buffer testing * xmlIO.c HTMLtree.c: new internal entry point to hide even better xmlAllocOutputBufferInternal * tree.c: harden the code around buffer allocation schemes * parser.c: restore the warning when namespace names are not absolute URIs * runxmlconf.c: continue regression tests if we get the expected number of errors * Makefile.am: run the python tests on make check * xmlsave.c: handle the HTML documents and trees * python/libxml.c: convert python serialization to the xmlSave APIs and avoid some horrible hacks Daniel svn path=/trunk/; revision=3790
Daniel Veillard 1572425c 2008-08-30T15:01:04 preparing 2.7.0 release remove some testing traces remove some warnings * configure.in, doc/*: preparing 2.7.0 release * tree.c: remove some testing traces * parser.c xmlIO.c xmlschemas.c: remove some warnings Daniel svn path=/trunk/; revision=3788
Daniel Veillard cba68396 2008-08-29T12:43:40 a couple more fixes patch from Andreas Färber to compile on Haiku * parser.c: a couple more fixes * nanohttp.c nanoftp.c: patch from Andreas Färber to compile on Haiku * doc/examples/*: regenerated daniel svn path=/trunk/; revision=3784
Daniel Veillard 0161e638 2008-08-28T15:36:32 completely different fix for the recursion detection based on entity * parser.c include/libxml/parser.h: completely different fix for the recursion detection based on entity density, big cleanups in the entity parsing code too * result/*.sax*: the parser should not ask for used defined versions of the predefined entities * testrecurse.c: automatic test for entity recursion checks * Makefile.am: added testrecurse * test/recurse/lol* test/recurse/good*: a first set of tests for the recursion Daniel svn path=/trunk/; revision=3783
Daniel Veillard 49d4405a 2008-08-27T19:57:06 a bit of cleanup and added checks based on the regression tests of the * include/libxml/xmlerror.h parser.c: a bit of cleanup and added checks based on the regression tests of the xmlconf suite Daniel svn path=/trunk/; revision=3782
Daniel Veillard a8f09ce8 2008-08-27T13:02:01 cleanup entity pushing error handling based on a patch from Ashwin daniel * include/libxml/parserInternals.h parser.c: cleanup entity pushing error handling based on a patch from Ashwin daniel svn path=/trunk/; revision=3779
Daniel Veillard 8915c150 2008-08-26T13:05:34 strengthen some of the internal parser limits, add an XML_PARSE_HUGE * include/libxml/parser.h parser.c xmllint.c: strengthen some of the internal parser limits, add an XML_PARSE_HUGE option to bypass them all. More internal parser limits will still need to be added. Daniel svn path=/trunk/; revision=3777
Daniel Veillard f4f4e485 2008-08-25T08:57:48 rework the patch to avoid some ABI issue with people allocating entities * include/libxml/entities.h entities.c SAX2.c parser.c: rework the patch to avoid some ABI issue with people allocating entities structure directly Daniel svn path=/trunk/; revision=3773
Daniel Veillard 4bf899bf 2008-08-20T17:04:30 fix for CVE-2008-3281 Daniel * include/libxml/parser.h include/libxml/entities.h entities.c parserInternals.c parser.c: fix for CVE-2008-3281 Daniel svn path=/trunk/; revision=3772
Daniel Veillard ae0765b6 2008-07-31T19:54:59 more progresses against the official regression tests small cleanup for * runxmlconf.c: more progresses against the official regression tests * runsuite.c: small cleanup for non-leak reports * include/libxml/tree.h: parsing flags and other properties are now added to the document node, this is generally useful and allow to make Name and NmToken validations based on the parser flags, more specifically the 5th edition of XML or not * HTMLparser.c tree.c: small side effects for the previous changes * parser.c SAX2.c valid.c: the bulk of teh changes are here, the parser and validation behaviour can be affected, parsing flags need to be copied, lot of changes. Also fixing various validation problems in the regression tests. Daniel svn path=/trunk/; revision=3762
Daniel Veillard 37334576 2008-07-31T08:20:02 added a skipped list, insert rmt-ns10-035 improve 'make check' clean up * runxmlconf.c: added a skipped list, insert rmt-ns10-035 * Makefile.am: improve 'make check' * include/libxml/xmlerror.h parser.c: clean up namespace errors checking and reporting, errors when a document is labelled as UTF-16 while it is parsed as UTF-8 and no encoding was given explicitely. * result/errors/webdav.xml.*: some warnings are no recategorized as Namespace errors Daniel svn path=/trunk/; revision=3761
Daniel Veillard 40ec29a5 2008-07-30T12:35:40 an XML-1.0 document can't load an 1.1 entity when using entities make sure * parser.c include/libxml/xmlerror.h: an XML-1.0 document can't load an 1.1 entity * runxmlconf.c: when using entities make sure we load them Daniel svn path=/trunk/; revision=3759
Daniel Veillard 051d52cb 2008-07-29T16:44:59 fix a bug not detecting cross entity comments probably when comment * parser.c: fix a bug not detecting cross entity comments probably when comment parsing got optimized. * Makefile.am: add make check * runxmlconf.c: fix the log file name Daniel svn path=/trunk/; revision=3758
Daniel Veillard 7e5c3f48 2008-07-29T16:12:31 add a C program to run the W3C test suite, work in progress add a new * runxmlconf.c Makefile.am: add a C program to run the W3C test suite, work in progress * xmllint.c: add a new option --oldxml10 to use the old parser * parser.c: fix the XML_PARSE_OLD10 processing of the new option and a bug in version parsing Daniel svn path=/trunk/; revision=3757
Daniel Veillard 34e3f641 2008-07-29T09:02:27 implement XML-1.0 5th edition, add parser option XML_PARSE_OLD10 to stick * include/libxml/parser.h include/libxml/xmlerror.h parser.c: implement XML-1.0 5th edition, add parser option XML_PARSE_OLD10 to stick to old behaviour * testapi.c gentest.py: modified slightly and regenerated * Makefile.am: add testchar Daniel svn path=/trunk/; revision=3755
Daniel Veillard 2135fc2d 2008-04-04T16:10:51 improve the *Recover* functions documentation Daniel * parser.c: improve the *Recover* functions documentation Daniel svn path=/trunk/; revision=3731
Daniel Veillard 6ccc56df 2008-04-03T12:59:06 patch from Mark Rowe fixing BOM or encoding detection in external parsed * parser.c: patch from Mark Rowe fixing BOM or encoding detection in external parsed entities, should fix #440415 Daniel svn path=/trunk/; revision=3730
Daniel Veillard a4ba09d7 2008-04-03T06:24:04 more realloc problems pointed out by Ashwin Daniel * parser.c: more realloc problems pointed out by Ashwin Daniel svn path=/trunk/; revision=3724
Daniel Veillard 68b6e02b 2008-03-31T09:26:00 lot of out of memory handling fixes from Ashwin work around a problem with * parser.c: lot of out of memory handling fixes from Ashwin * elfgcchack.h doc/elfgcchack.xsl: work around a problem with xmlDllMain * include/libxml/threads.h: indenting cleanups Daniel svn path=/trunk/; revision=3720
Daniel Veillard 05b37c68 2008-03-31T08:27:07 trying to clarify even more the xmlCleanupParser() use and the memory * parser.c docs/*: trying to clarify even more the xmlCleanupParser() use and the memory documentation Daniel svn path=/trunk/; revision=3719
Daniel Veillard dc171601 2008-03-26T17:41:38 changes based on Alex Khesin patch where xmlParseCharRef seems to not be * parser.c: changes based on Alex Khesin patch where xmlParseCharRef seems to not be checked correctly, fixes #520198 Daniel svn path=/trunk/; revision=3718
Daniel Veillard 6a31b837 2008-03-26T14:06:44 patch from Ashwin to avoid a problem of attribute redefinition in the DTD. * parser.c: patch from Ashwin to avoid a problem of attribute redefinition in the DTD. Remove a warning too. Daniel svn path=/trunk/; revision=3717
Daniel Veillard 97c9ce2e 2008-03-25T16:52:41 fix various attribute normalisation problems reported by Ashwin this * parser.c: fix various attribute normalisation problems reported by Ashwin * result/c14n/without-comments/example-4 result/c14n/with-comments/example-4: this impacted the result of two c14n tests :-\ * test/att9 test/att10 test/att11 result//att9* result//att10* result//att11*: added 3 specific regression tests coming from the XML spec revision and from Ashwin Daniel svn path=/trunk/; revision=3715
Daniel Veillard 8bf64aef 2008-03-24T20:45:21 fix a problem reported by Ashwin for system parameter entities referenced * parser.c: fix a problem reported by Ashwin for system parameter entities referenced from entities in external subset, add a specific loading routine. * test/valid/dtds/external.ent test/valid/dtds/external2.ent test/valid/t11.xml result/valid/t11.xml*: added the test to the regression suite Daniel svn path=/trunk/; revision=3713
Daniel Veillard 37d2d16c 2008-03-14T10:54:00 patch from Vasily Chekalkin fixes memory leaks, should fix 512647 Daniel * parser.c xinclude.c: patch from Vasily Chekalkin fixes memory leaks, should fix 512647 Daniel svn path=/trunk/; revision=3706
Daniel Veillard d0d2f090 2008-03-07T16:50:21 fix handling of empty CDATA nodes as reported and discussed around #514181 * xmlsave.c parser.c: fix handling of empty CDATA nodes as reported and discussed around #514181 and associated patches * test/emptycdata.xml result/emptycdata.xml* result/noent/emptycdata.xml: added a specific test in the regression suite. Daniel svn path=/trunk/; revision=3701
Daniel Veillard ccc476f1 2008-03-04T13:19:49 patch from Alex Khesin fixing CDATA output after a text node. fixed the * xmlwriter.c: patch from Alex Khesin fixing CDATA output after a text node. * parser.c: fixed the comment for xmlParserCleanup * globals.c: fixed indentation Daniel svn path=/trunk/; revision=3699
Daniel Veillard c707d0b7 2008-01-24T14:48:54 fix a memeory leak in internal subset parsing with a fix from Ashwin add * parser.c: fix a memeory leak in internal subset parsing with a fix from Ashwin * test/errors/content1.xml result/errors/content1.xml*: add test to regressions Daniel svn path=/trunk/; revision=3680
Daniel Veillard b3edafd7 2008-01-11T08:00:57 avoid a warning on 64bits introduced earlier make more checking on the * parser.c: avoid a warning on 64bits introduced earlier * parserInternals.c: make more checking on the UTF-8 input Daniel svn path=/trunk/; revision=3676