SAX2.c


Log

Author Commit Date CI Message
Nick Wellnhofer cecd364d 2022-11-24T16:38:47 parser: Don't call *DefaultSAXHandlerInit from xmlInitParser Change the default handler definitions to match the result after calling the initialization functions. This makes sure that no thread-local variables are accessed when calling xmlInitParser.
Nick Wellnhofer 68a6518c 2022-11-15T18:23:33 parser: Rewrite push parser boundary checks Remove inaccurate xmlParseCheckTransition check. Remove non-incremental xmlParseGetLasts check. Add functions that check for several boundary constructs more accurately, keeping track of progress in ctxt->checkIndex. Fixes #439.
Nick Wellnhofer 7ceaee94 2022-11-02T16:05:05 malloc-fail: Fix memory leak in xmlSAX2ExternalSubset Found with libFuzzer, see #344.
Nick Wellnhofer 81621b1f 2022-09-02T18:38:33 Fix compiler warnings in SAX2.c
Nick Wellnhofer ad338ca7 2022-09-01T01:18:30 Remove explicit integer casts Remove explicit integer casts as final operation - in assignments - when passing arguments - when returning values Remove casts - to the same type - from certain range-bound values The main motivation is that these explicit casts don't change the result of operations and only render UBSan's implicit-conversion checks useless. Removing these casts allows UBSan to detect cases where truncation or sign-changes occur unexpectedly. Document some explicit casts as truncating and add a few missing ones.
Nick Wellnhofer aeb69fd3 2022-09-01T02:33:16 Fix overflow check in SAX2.c
Nick Wellnhofer 0f568c0b 2022-08-26T01:22:33 Consolidate private header files Private functions were previously declared - in header files in the root directory - in public headers guarded with IN_LIBXML - in libxml.h - redundantly in source files that used them. Consolidate all private header files in include/private.
Nick Wellnhofer 0e49f882 2022-08-24T05:25:37 Mark most SAX1 functions as deprecated No compiler warnings generated yet.
Nick Wellnhofer 4b184240 2022-08-22T14:11:15 Remove htmlDefaultSAXHandler from non-SAX1 build This matches long-standing behavior of the XML counterpart.
Nick Wellnhofer 3e7b4f37 2022-05-20T23:28:25 Avoid calling xmlSetTreeDoc Create text nodes with xmlNewDocText or set the document directly to avoid xmlSetTreeDoc being called when the node is inserted.
Nick Wellnhofer 40483d0c 2022-03-06T13:55:48 Deprecate module init and cleanup functions These functions shouldn't be part of the public API. Most init functions are only thread-safe when called from xmlInitParser. Global variables should only be cleaned up by calling xmlCleanupParser.
Nick Wellnhofer 4a8c71eb 2022-03-04T03:35:57 Remove DOCBparser This code has been broken and deprecated since version 2.6.0, released in 2003. Because of a bug in commit 961b535c, DOCBparser.c was never compiled since 2012. I couldn't find a Debian package using any of its symbols, so it seems safe to remove this module.
Nick Wellnhofer c41bc10d 2022-02-22T19:57:12 Fix unused variable warnings with disabled features
Nick Wellnhofer 346c3a93 2022-02-20T18:46:42 Remove elfgcchack.h The same optimization can be enabled with -fno-semantic-interposition since GCC 5. clang has always used this option by default.
Nick Wellnhofer e03590c9 2022-02-08T02:42:30 Don't add IDs containing unexpanded entity references When parsing without entity substitution, IDs or IDREFs containing unexpanded entity reference like "abc&x;def" could be created. We could try to expand these entities like in validation mode, but it seems safer to honor the request not to expand entities. We silently ignore such IDs for now.
Nick Wellnhofer d7cb33cf 2022-01-13T17:06:14 Rework validation context flags Use a bitmask instead of magic values to - keep track whether the validation context is part of a parser context - keep track whether xmlValidateDtdFinal was called This allows to add addtional flags later. Note that this deliberately changes the name of a public struct member, assuming that this was always private data never to be used by client code.
Nick Wellnhofer a647e430 2022-01-25T02:59:40 Fix casting of line numbers in SAX2.c The line member is an unsigned short. Avoids integer conversion warnings with UBSan. Also use USHRT_MAX instead of hard-coded constant.
David King 92bce68c 2021-07-14T11:37:07 Fix memory leak in xmlSAX2AttributeDecl Found by Coverity. https://bugzilla.redhat.com/show_bug.cgi?id=1938806
Nick Wellnhofer acb35667 2021-02-03T13:48:40 Fix quadratic runtime when parsing CDATA sections Use optimized concatenation for CDATA sections in addition to normal text. This also affects HTML script content. Found by OSS-Fuzz.
Nick Wellnhofer 21ca8829 2020-07-25T17:57:29 Don't try to handle namespaces when building HTML documents Don't try to resolve namespace in xmlSAX2StartElement when parsing HTML documents. This useless operation could slow down the parser considerably. Found by OSS-Fuzz.
Nick Wellnhofer 20c60886 2020-03-08T17:19:42 Fix typos Resolves #133.
Nick Wellnhofer eddfbc38 2020-01-22T22:03:45 Don't load external entity from xmlSAX2GetEntity Despite the comment, I can't see a reason why external entities must be loaded in the SAX handler. For external entities, the handler is typically first invoked via xmlParseReference which will later load the entity on its own if it wasn't loaded yet. The old code also lead to duplicated SAX events which makes it basically impossible to reuse xmlSAX2GetEntity for a custom SAX parser. See the change to the expected test output. Note that xmlSAX2GetEntity was loading the entity via xmlParseCtxtExternalEntity while xmlParseReference uses xmlParseExternalEntityPrivate. In the previous commit, the two functions were merged, trying to compensate for some slight differences between the two mostly identical implementations. But the more urgent reason for this change is that xmlParseReference has the facility to abort early when recursive entities are detected, avoiding what could practically amount to an infinite loop. If you want to backport this change, note that the previous three commits are required as well: f9ea1a24 Fix copying of entities in xmlParseReference 5c7e0a9a Copy some XMLReader option flags to parser context 1a3e584a Merge code paths loading external entities Found by OSS-Fuzz.
Jared Yanovich 2a350ee9 2019-09-30T17:04:54 Large batch of typo fixes Closes #109.
Nick Wellnhofer 6b49db2c 2019-01-07T17:14:21 Fix memory leak in xmlSAX2StartElement Introduced by a recent commit. Only happens if max depth is exceeded in SAX1 mode. Found by OSS-Fuzz.
Nick Wellnhofer 1567b55b 2018-11-22T14:28:58 Set doc on element obtained from freeElems In commit 8c9daf79, a call to xmlFreeNode was added in xmlSAX2StartElementNs. If a node was obtained from the freeElems list, make sure to set the doc, otherwise xmlFreeNode wouldn't realize that the node name might be in the dictionary, causing an invalid free. Note that the issue fixed in commit 8c9daf79 requires commit 0ed6addb and this one to work properly. Found by OSS-Fuzz.
Nick Wellnhofer 0ed6addb 2018-09-22T15:41:01 Unlink node before freeing it in xmlSAX2StartElement The node may have been added to the document already, so it must be unlinked first. Thanks to David Kilzer for spotting this.
Nick Wellnhofer 8c9daf79 2018-09-12T13:42:27 Check return value of nodePush in xmlSAX2StartElement If the maximum depth is exceeded, nodePush halts the parser which results in freeing the input buffer since the previous commit. This invalidates the attribute pointers, so the error condition must be checked. Found by OSS-Fuzz.
Nick Wellnhofer d422b954 2017-10-09T13:37:42 Fix pointer/int cast warnings on 64-bit Windows On 64-bit Windows, `long` is 32 bits wide and can't hold a pointer. Switch to ptrdiff_t instead which should be the same size as a pointer on every somewhat sane platform without requiring C99 types like intptr_t. Fixes bug 788312. Thanks to J. Peter Mugaas for the report and initial patch.
Nick Wellnhofer 83fb4119 2017-09-05T23:45:04 Fix memory leaks in SAX1 parser Found by OSS-Fuzz. I could only reproduce this with the (obsolete) SAX1 parser. One leak is caused by duplicate namespaced attribute names and can be reproduced in memory mode (testcase 4556417027538944): $ cat file <d xmlns:a="ns" a:x="v" xmlns:b="ns" b:x="v"/> $ xmllint --sax1 --memory file The other is caused by ATTLISTs with a normalized default for "xmlns" if they're processed after the entity recursion limit was hit (testcase 5580750034305024). $ cat file <!DOCTYPE d [ <!ENTITY a '<d>&a;'> <!ATTLIST d xmlns NMTOKEN 't'> ]> <d>&a; $ xmllint --sax1 --valid file Also see https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2461
Nick Wellnhofer 8bbe4508 2017-06-17T16:15:09 Spelling and grammar fixes Fixes bug 743172, bug 743489, bug 769632, bug 782400 and a few other misspellings.
David Tardon 07418011 2017-04-05T10:22:40 Do not leak the new CData node if adding fails For https://bugzilla.gnome.org/show_bug.cgi?id=780918
David Kilzer 4472c3a5 2016-05-13T15:13:17 Fix some format string warnings with possible format string vulnerability For https://bugzilla.gnome.org/show_bug.cgi?id=761029 Decorate every method in libxml2 with the appropriate LIBXML_ATTR_FORMAT(fmt,args) macro and add some cleanups following the reports.
Daniel Veillard a6ea72ad 2014-07-14T20:29:34 Fix processing in SAX2 in case of an allocation failure Related to https://bugzilla.gnome.org/show_bug.cgi?id=731360
Gaurav 3e0eec43 2014-06-13T14:45:20 Adding some missing NULL checks in SAX2 DOM building code and in the HTML parser
Nicolas Le Cam 52010c63 2013-06-16T08:55:08 Compile out use of xmlValidateNCName() when not available. Fix compilation with minimum and valid.
Nicolas Le Cam 77b5b464 2014-02-10T10:32:45 Legacy needs xmlSAX2StartElement() and xmlSAX2EndElement(). Fix compilation with minimum and legacy.
Gaurav a885f13a 2013-08-03T22:16:02 Fix a possible NULL dereference https://bugzilla.gnome.org/show_bug.cgi?id=705400 In case of allocation error the pointer was dereferenced before the test for a failure
Daniel Veillard ab0e3504 2013-03-27T13:21:38 Activate detection of encoding in external subset https://bugzilla.gnome.org/show_bug.cgi?id=694228 the ctxt->encoding was percolated down when parsing the external subset leading to failures
Daniel Veillard cff2546f 2013-03-11T15:57:55 Cache presence of '<' in entities content slightly modify how ent->checked is used, and use the lowest bit to keep the information
Daniel Veillard a3f1e3e5 2013-03-11T13:57:53 Avoid extra processing on entities If an entity has already been checked for correctness no need to check it on every reference
Daniel Veillard 6c91aa38 2012-10-25T15:33:59 Fix a regression in 2.9.0 breaking validation while streaming https://bugzilla.gnome.org/show_bug.cgi?id=684774 with help from Kjell Ahlstedt <kjell.ahlstedt@bredband.net>
Daniel Veillard 7651606f 2012-09-11T14:02:08 Various cleanups to avoid compiler warnings
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 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 740cb1a4 2012-07-18T16:05:37 Memory error within SAX2 reuse common framework There is no reason for that class of errors to not use the same handling allowing strctured error processing.
Tim Elliott 71a243d5 2012-01-17T19:25:08 xmlParseNodeInContext problems with an empty document When you call xmlParseNodeInContext on a fragment node with an empty document, the parser associates the first new node twice -- once with the document, and once with the fragment node. This fixes the issue by only associating the new node with the fragment node.
Pavel Andrejs 8ad4da5f 2012-05-08T11:01:12 HTML element position is not detected propperly The data in node_seq in xmlParserCtxt was not updated properly when parsing HTML. This patch fixes the accounting for both pull and push mode of HTML parsing.
Daniel Veillard 1c989278 2012-01-26T19:43:06 Fix SAX2 builder in case of undefined attributes namespace To follow the early XML-1.0 REC, the new localname is "prefix:localname" and there is obviously now namespace.
Daniel Veillard 77b77b13 2012-01-26T19:11:02 Fix SAX2 builder in case of undefined element namespaces Work as in XML-1.0 before namespaces, and use prefix:localname as the new element name (and no namespace of course) Also fix 3 cases in the regression tests where the prefix: was erroneously dropped in such case
Daniel Veillard aa54d37c 2010-09-09T18:17:47 Fix handling of XML-1.0 XML namespace declaration Usually 'xml' namespace for XML-1.0 declaration does not need to be carried but Mike Hommey raised the problem that the SVG XSD file fails to parse due to a mishandling. - SAX2.c: failure to create a namespace should not be interpreted as a memory allocation error - tree.c: document better xmlNewNs behaviour, and fix it in the case the 'xml' prefix is being used.
Daniel Veillard 06c93b75 2010-03-15T16:08:44 Remove a few warnings
Daniel Veillard 3c080d6d 2010-03-15T15:47:50 Don't give default HTML boolean attribute values in parser * HTMLparser.c: don't default value of HTML boolean attributes in the parser * SAX2.c: move this to SAX2 tree building backend * result/HTML/doc2.htm.sax result/HTML/doc3.htm.sax result/HTML/wired.html.sax: this changes a few HTML SAX regression tests
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 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 023d0bab 2009-07-29T11:34:50 Fix leak on SAX1, xmllint --sax1 option and debug * SAX2.c: don't leak in xmlCheckDefaultedAttributes for standalone checking * xmllint.c: fix xmllint --sax1 to actually use XML_PARSE_SAX1 * debugXML.c: don't raise an error if markup wasn't allocated from dictionary if document was parsed with option disabling it
Jim Meyering 669e88c0 2009-07-29T11:33:32 potential NULL dereference on non-glibc * SAX2.c (xmlCheckDefaultedAttributes): When xmlStrdup and/or xmlStrcat fails due to OOM avoid printing NULL via a printf-style "%s" format
Daniel Veillard 97ff9b36 2009-01-18T21:43:30 preparing 0.7.3 release fix a typo in a name Daniel * configure.in doc/xml.html doc/*: preparing 0.7.3 release * include/libxml/parserInternals.h SAX2.c: fix a typo in a name Daniel svn path=/trunk/; revision=3814
Daniel Veillard 1fb2e0df 2009-01-18T14:08:36 add a new define XML_MAX_TEXT_LENGHT limiting the maximum size of a single * include/libxml/parserInternals.h SAX2.c: add a new define XML_MAX_TEXT_LENGHT limiting the maximum size of a single text node, the defaultis 10MB and can be removed with the HUGE parsing option Daniel svn path=/trunk/; revision=3808
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 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 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 45efd087 2008-07-07T13:52:52 fix line number on text nodes, problem raised by Ralf Junker Daniel * SAX2.c: fix line number on text nodes, problem raised by Ralf Junker Daniel svn path=/trunk/; revision=3751
Daniel Veillard b242b088 2008-02-08T09:56:31 applied patch from Florent Guilian to remove an useless mutex in the * dict.c: applied patch from Florent Guilian to remove an useless mutex in the xmlDict structure. older, not commited ... * SAX2.c: another leak reported by Ashwin * xinclude.c: fixed the behaviour when XIncluding a fragment of the current document, patch from Chris Ryan Daniel svn path=/trunk/; revision=3686
Daniel Veillard dbbd72bd 2007-06-12T15:15:52 fixing bug #319964, parsing of HTML attribute really should not have * SAX2.c: fixing bug #319964, parsing of HTML attribute really should not have namespace processing. Daniel svn path=/trunk/; revision=3637
Daniel Veillard a37a6ad9 2006-10-10T20:05:45 trying to fix entities behaviour when using SAX, had to extend entities * include/libxml/entities.h entities.c SAX2.c parser.c: trying to fix entities behaviour when using SAX, had to extend entities content and hack on the entities processing code, but that should fix the long standing bug #159219 Daniel
Daniel Veillard b8efdda0 2006-10-10T12:37:14 add a new function xmlPathToUri() to provide a clean conversion when * uri.c include/libxml/uri.h: add a new function xmlPathToUri() to provide a clean conversion when setting up a base * SAX2.c tree.c: use said function when setting up doc->URL or using the xmlSetBase function. Should fix #346261 Daniel
Daniel Veillard 77aad34c 2006-07-13T06:21:09 refactor to use normal warnings for entities problem and not straight SAX * SAX2.c: refactor to use normal warnings for entities problem and not straight SAX callbacks. Daniel
Daniel Veillard 2728f845 2006-03-09T16:49:24 more cleanups based on coverity reports. Daniel * SAX2.c catalog.c encoding.c entities.c example/gjobread.c python/libxml.c: more cleanups based on coverity reports. Daniel
Daniel Veillard 6977c6c4 2006-01-04T14:03:10 fix bug #324432 with <xml:foo/> added to the regression tests Daniel * SAX2.c: fix bug #324432 with <xml:foo/> * test/ns7 resul//ns7*: added to the regression tests Daniel
Daniel Veillard 54f9a4f5 2005-09-03T13:28:24 fixing a number of issues raised by xml:id but more generally related to * SAX2.c tree.c valid.c: fixing a number of issues raised by xml:id but more generally related to attributes and ID handling, fixes #314358 among other things Daniel
Daniel Veillard 8874b94c 2005-08-25T13:19:21 added a parser XML_PARSE_COMPACT option to allocate small text nodes (less * HTMLparser.c parser.c SAX2.c debugXML.c tree.c valid.c xmlreader.c xmllint.c include/libxml/HTMLparser.h include/libxml/parser.h: added a parser XML_PARSE_COMPACT option to allocate small text nodes (less than 8 bytes on 32bits, less than 16bytes on 64bits) directly within the node, various changes to cope with this. * result/XPath/tests/* result/XPath/xptr/* result/xmlid/*: this slightly change the output Daniel
Daniel Veillard 73da77e0 2005-08-24T14:05:37 line numbers are now carried by most nodes, fixing xmlGetLineNo() c.f. bug * SAX2.c tree.c: line numbers are now carried by most nodes, fixing xmlGetLineNo() c.f. bug #309205 Daniel
Daniel Veillard bca3ad25 2005-08-23T22:14:02 fixed compilation when configured --without-sax1 and other cleanups fixes * SAX2.c globals.c runtest.c testC14N.c testapi.c tree.c include/libxml/SAX2.h include/libxml/xmlregexp.h: fixed compilation when configured --without-sax1 and other cleanups fixes bug #172683 * doc/* elfgcchack.h: regenerated Daniel
Daniel Veillard 24505b0f 2005-07-28T23:49:35 a lot of small cleanups based on Linus' sparse check output. Daniel * HTMLparser.c SAX2.c encoding.c globals.c parser.c relaxng.c runsuite.c runtest.c schematron.c testHTML.c testReader.c testRegexp.c testSAX.c testThreads.c valid.c xinclude.c xmlIO.c xmllint.c xmlmodule.c xmlschemas.c xpath.c xpointer.c: a lot of small cleanups based on Linus' sparse check output. Daniel
Daniel Veillard 87b3046b 2005-07-05T14:04:36 first steps toward a testsuite dist fixed bug #307870 Daniel * Makefile.am: first steps toward a testsuite dist * SAX2.c include/libxml/xmlerror.h: fixed bug #307870 Daniel
Daniel Veillard 5d4644ef 2005-04-01T13:11:58 revamped the elfgcchack.h format to cope with gcc4 change of aliasing * doc/apibuild.py doc/elfgcchack.xsl: revamped the elfgcchack.h format to cope with gcc4 change of aliasing allowed scopes, had to add extra informations to doc/libxml2-api.xml to separate the header from the c module source. * *.c: updated all c library files to add a #define bottom_xxx and reimport elfgcchack.h thereafter, and a bit of cleanups. * doc//* testapi.c: regenerated when rebuilding the API Daniel
Daniel Veillard a521d287 2004-11-09T14:59:59 better handling of conditional features more testing on parser contexts * gentest.py testapi.c: better handling of conditional features * HTMLparser.c SAX2.c parserInternals.c xmlwriter.c: more testing on parser contexts closed leaks, error messages Daniel
Daniel Veillard 6128c01c 2004-11-08T17:16:15 better parser options coverage more cleanups. Daniel * gentest.py testapi.c: better parser options coverage * SAX2.c xpath.c: more cleanups. Daniel
Daniel Veillard 2a4fb5ac 2004-11-08T14:02:18 more coverage more fixes Daniel * gentest.py testapi.c: more coverage * SAX2.c parser.c parserInternals.c: more fixes Daniel
Daniel Veillard ce682bc2 2004-11-05T17:22:25 autogenerate a minimal NULL value sequence for unknown pointer types This * gentest.py testapi.c: autogenerate a minimal NULL value sequence for unknown pointer types * HTMLparser.c SAX2.c chvalid.c encoding.c entities.c parser.c parserInternals.c relaxng.c valid.c xmlIO.c xmlreader.c xmlsave.c xmlschemas.c xmlschemastypes.c xmlstring.c xpath.c xpointer.c: This uncovered an impressive amount of entry points not checking for NULL pointers when they ought to, closing all the open gaps. Daniel
Daniel Veillard 34099b40 2004-11-04T17:34:35 changing the way the .c is generated, extending the tests coverage fixing * gentest.py testapi.c: changing the way the .c is generated, extending the tests coverage * include/libxml/nanoftp.h nanoftp.c elfgcchack.h doc/*: fixing some function signatures, regenerating stuff * SAX2.c parser.c xmlIO.c: another set of bug fixes and API hardening Daniel
Daniel Veillard 36e5cd50 2004-11-02T14:52:23 adding xmlMemBlocks() work on generator of an automatic API regression * xmlmemory.c include/libxml/xmlmemory.h: adding xmlMemBlocks() * Makefile.am gentest.py testapi.c: work on generator of an automatic API regression test tool. * SAX2.c nanoftp.c parser.c parserInternals.c tree.c xmlIO.c xmlstring.c: various API hardeing changes as a result of running teh first set of automatic API regression tests. * test/slashdot16.xml: apparently missing from CVS, commited it Daniel
Daniel Veillard eff45a92 2004-10-29T12:10:55 register xmlSchemaSetValidErrors, patch from Brent Hendricks in the * python/libxml.c: register xmlSchemaSetValidErrors, patch from Brent Hendricks in the mailing-list * include/libxml/valid.h HTMLparser.c SAX2.c valid.c parserInternals.c: fix #156626 and more generally how to find out if a validation contect is part of a parsing context or not. This can probably be improved to make 100% sure that vctxt->userData is the parser context too. It's a bit hairy because we can't change the xmlValidCtxt structure without breaking the ABI since this change xmlParserCtxt information indexes. Daniel
Daniel Veillard 03a53c34 2004-10-26T16:06:51 added checking for names values and dictionnaries generates a tons of * debugXML.c include/libxml/xmlerror.h: added checking for names values and dictionnaries generates a tons of errors * SAX2.ccatalog.c parser.c relaxng.c tree.c xinclude.c xmlwriter.c include/libxml/tree.h: fixing the errors in the regression tests Daniel
Daniel Veillard fc484dd0 2004-10-22T14:34:23 added support for HTML PIs #156087 added specific tests Daniel * HTMLparser.c: added support for HTML PIs #156087 * test/HTML/python.html result/HTML/python.html*: added specific tests Daniel
Daniel Veillard 8de5c0bd 2004-10-07T13:14:19 adding the tree debug mode fixing various problems reported by the debug * debugXML.c include/libxml/debugXML.h include/libxml/xmlerror.h: adding the tree debug mode * parser.c relaxng.c tree.c xpath.c: fixing various problems reported by the debug mode. * SAX2.c: another tree fix from Rob Richards Daniel
William M. Brack bf5cf219 2004-08-31T06:47:17 fixed bug introduced during OOM fixup causing problems with default * SAX2.c: fixed bug introduced during OOM fixup causing problems with default namespace when a named prefix with the same href was present (reported on the mailing list by Karl Eichwalder. * xmlstring.c: modified xmlCheckUTF8 with suggested code from Julius Mittenzwei. * dict.c: added a typecast to try to avoid problem reported by Pascal Rodes.
Daniel Veillard 29b17482 2004-08-16T00:39:03 small typo pointed out by Mike Hommey slightly improved the --c14n * xmlIO.c: small typo pointed out by Mike Hommey * doc/xmllint.xml, xmllint.html, xmllint.1: slightly improved the --c14n description, c.f. #144675 . * nanohttp.c nanoftp.c: applied a first simple patch from Mike Hommey for $no_proxy, c.f. #133470 * parserInternals.c include/libxml/parserInternals.h include/libxml/xmlerror.h: cleanup to avoid 'error' identifier in includes # * parser.c SAX2.c debugXML.c include/libxml/parser.h: first version of the inplementation of parsing within the context of a node in the tree #142359, new function xmlParseInNodeContext(), added support at the xmllint --shell level as the "set" function * test/scripts/set* result/scripts/* Makefile.am: extended the script based regression tests to instrument the new function. Daniel
William M. Brack a3215c7a 2004-07-31T16:24:01 many further little changes for OOM problems. Now seems to be getting * SAX2.c, encoding.c, error.c, parser.c, tree.c, uri.c, xmlIO.c, xmlreader.c, include/libxml/tree.h: many further little changes for OOM problems. Now seems to be getting closer to "ok". * testOOM.c: added code to intercept more errors, found more problems with library. Changed method of flagging / counting errors intercepted.
William M. Brack 42331a90 2004-07-29T07:07:16 further fixes for out of memory condition, mostly from Olivier Andrieu. * SAX2.c, tree.c, uri.c, xmlIO.c, xmlreader.c: further fixes for out of memory condition, mostly from Olivier Andrieu. * testOOM.c: some further improvement by Olivier, with a further small enhancement for easier debugging.
William M. Brack 9f797abd 2004-07-28T07:40:12 implemented patches supplied by Olivier Andrieu (bug 148588), plus made * SAX2.c, error.c, parser.c, tree.c, xmlreader.c: implemented patches supplied by Olivier Andrieu (bug 148588), plus made some further enhancements, to correct some problems with out of memory conditions. * testOOM.c: improved with patches from Olivier Andrieu
William M. Brack 96d2effc 2004-06-30T11:48:47 warning message cleanup. Now compiles warning-free, all tests passed. * xmlschemas.c, xmlschemastypes.c: warning message cleanup. Now compiles warning-free, all tests passed. * SAX2.c: small change to comments for documentation. No change to logic.
William M. Brack 5ef2f812 2004-05-23T23:56:47 *** empty log message ***
William M. Brack 3f147372 2004-05-22T01:09:26 skipped call to xmlValidateNCName when compiling --with-minimum (bug * SAX2.c: skipped call to xmlValidateNCName when compiling --with-minimum (bug 142917)
Daniel Veillard 68cb4b24 2004-04-18T20:55:39 relaxed id() to not check taht the name(s) passed are actually NCName, * xpath.c: relaxed id() to not check taht the name(s) passed are actually NCName, decided this in agreement with Aleksey Sanin since existing specs like Visa3D broke that conformance checking and other tools seems to not implement it sigh... * SAX2.c: check attribute decls for xml:id and the value is an NCName. * test/xmlid/id_err* result/xmlid/id_err*: added error testing Daniel
Daniel Veillard 67f8b1cd 2004-04-09T21:51:49 adding xml:id draft support adding 4 first regression tests Daniel * SAX2.c include/libxml/tree.h: adding xml:id draft support * Makefile.am test/xmlid/id_tst* result/xmlid/id_tst*: adding 4 first regression tests Daniel
Daniel Veillard 500a1de5 2004-03-22T15:22:58 applied patch from Alfred Mickautsch for better DTD support. fixed bug * xmlwriter.c include/libxml/xmlwriter.h doc/* : applied patch from Alfred Mickautsch for better DTD support. * SAX2.c HTMLparser.c parser.c xinclude.c xmllint.c xmlreader.c xmlschemas.c: fixed bug #137867 i.e. fixed properly the way reference counting is handled in the XML parser which had the side effect of removing a lot of hazardous cruft added to try to fix the problems associated as they popped up. * xmlIO.c: FILE * close fixup for stderr/stdout Daniel
Daniel Veillard 1a9b7084 2004-01-02T10:42:01 found and fixed a bug misallocating some non blank text node strings from * SAX2.c: found and fixed a bug misallocating some non blank text node strings from the dictionnary. * xmlmemory.c: fixed a problem with the memory debug mutex release. Daniel
Daniel Veillard 427174fb 2003-12-10T10:42:59 removed some compilation warnings Daniel * SAX2.c pattern.c: removed some compilation warnings Daniel