1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2026-01-17 02:02:39 +03:00
Commit Graph

472 Commits

Author SHA1 Message Date
Daniel Veillard
bdbe0d4e78 factoring of more error handling code, serious size reduction and more
* parser.c include/libxml/xmlerror.h: factoring of more
  error handling code, serious size reduction and more lisibility
  of the resulting code.
* parserInternals.c parser.c include/libxml/parserInternals.h
  include/libxml/parser.h: changing the way VC:Proper Group/PE Nesting
  checks are done, use a counter for entities. Entities where freed and
  reallocated at the same address failing the check.
* tree.c: avoid a warning
* result/valid/* result/VC/*: this slightly changes some validation
  error messages.
Daniel
2003-09-14 19:56:14 +00:00
Daniel Veillard
1afc9f3356 starting cleaning up error handling, factorize error processing update of
* parser.c include/libxml/xmlerror.h: starting cleaning up
  error handling, factorize error processing
* doc/xmllint.html: update of the page, remove --sgml
Daniel
2003-09-13 12:44:05 +00:00
Daniel Veillard
877a7bd6a3 removing the broken pseudo SGML DocBook parser code. Daniel
* Makefile.am DOCBparser.c parserInternals.c testDocbook.c
  xmllint.c doc/xmllint.xml doc/xmllint.1: removing the
  broken pseudo SGML DocBook parser code.
Daniel
2003-09-13 00:16:32 +00:00
Daniel Veillard
3b7840cd6c adding namespace checkings while making sure they still parse as
* parser.c parserInternals.c tree.c include/libxml/parser.h
  include/libxml/xmlerror.h: adding namespace checkings
  while making sure they still parse as wellformed documents.
  Add an nsWellFormed status report to the context, and
  provide new appropriate error codes.
* Makefile.am result/namespaces/* test/namespaces/*: add
  specific regression testing for the new namespace support
* test/att5 result/noent/att5 result/att5 result/att5.sax:
  add more coverage for the attribute parsing and normalization
  code.
Daniel
2003-09-11 23:42:01 +00:00
Daniel Veillard
07cb8226c0 Time to commit 3 days of work rewriting the parser internal,
fixing bugs and migrating to SAX2 interface by default. There
is some work letf TODO, like namespace validation and attributes
normalization (this break C14N right now)
* Makefile.am: fixed the test rules
* include/libxml/SAX2.h include/libxml/parser.h
  include/libxml/parserInternals.h SAX2.c parser.c
  parserInternals.c: changing the parser, migrating to SAX2,
  adding new interface to switch back to SAX1 or initialize a
  SAX block for v1 or v2. Most of the namespace work is done
  below SAX, as well as attribute defaulting
* globals.c: changed initialization of the default SAX handlers
* hash.c tree.c include/libxml/hash.h: added QName specific handling
* xmlIO.c: small fix
* xmllint.c testSAX.c: provide a --sax1 switch to test the old
  version code path
* result/p3p result/p3p.sax result/noent/p3p test/p3p: the new code
  pointed out a typo in a very old test namespace
Daniel
2003-09-10 10:51:05 +00:00
William M. Brack
c07329e2ab Implemented detection of compressed files, setting doc->compressed
* xmlIO.c include/libxml/xmlIO.h parser.c: Implemented detection
  of compressed files, setting doc->compressed appropriately
  (bug #120503).
2003-09-08 01:57:30 +00:00
Daniel Veillard
0fb1893539 allow to give -1 for undefined length in lookups first round of work on
* dict.c: allow to give -1 for undefined length in lookups
* include/libxml/parser.h parser.c parserInternals.c testSAX.c:
  first round of work on the new SAX2 interfaces, the API
  will change but commiting before changing for historical
  reference.
Daniel
2003-09-07 09:14:37 +00:00
Daniel Veillard
93625d300f patch from Stphane Bidoul to export globals entry points to the python
* include/libxml/globals.h: patch from Stphane Bidoul to export
  globals entry points to the python bindings
Daniel
2003-09-05 08:36:12 +00:00
Daniel Veillard
40412cda44 when creating a DOCTYPE use "html" lowercase by default instead of "HTML"
* HTMLparser.c: when creating a DOCTYPE use "html" lowercase
  by default instead of "HTML"
* parser.c xmlreader.c: optimization, gain a few % parsing speed by
  avoiding calls to "areBlanks" when not needed.
* include/libxml/parser.h include/libxml/tree.h: some structure
  extensions for future work on using per-document dictionaries.
Daniel
2003-09-03 13:28:32 +00:00
Igor Zlatkovic
5e483c86a1 additional macros, mingw section 2003-09-02 14:01:32 +00:00
Igor Zlatkovic
01d99951a5 fixed typos reported by Mark Vakoc 2003-08-28 16:26:39 +00:00
Igor Zlatkovic
aa3cfbd080 realigned parameters after taint 2003-08-27 08:59:58 +00:00
Igor Zlatkovic
5b316cd110 fixed defs for Borland compiler, as reported by Eric Zurcher 2003-08-27 08:01:18 +00:00
Daniel Veillard
68f8fad71e make sure the new header will be included when generating a new
* include/libxml/Makefile.am: make sure the new header will
  be included when generating a new distribution.
Daniel
2003-08-25 11:28:07 +00:00
Igor Zlatkovic
93f984af39 realigned the parameters after taint 2003-08-25 10:34:41 +00:00
Igor Zlatkovic
cd38635dc8 changed default var export to extern 2003-08-25 10:05:36 +00:00
Igor Zlatkovic
f05e5d146e moved export defs to a separate file for consistency 2003-08-25 09:15:36 +00:00
Igor Zlatkovic
76874e4516 Exportability taint of the headers 2003-08-25 09:05:12 +00:00
Daniel Veillard
1af9a41f24 Adding new version of the SAX interface, it's not there yet, currently
* Makefile.am SAX2.c include/libxml/Makefile.am include/libxml/SAX2.h:
  Adding new version of the SAX interface, it's not there yet,
  currently just preparing the work
* globals.c parser.c SAX.c include/libxml/SAX.h
  include/libxml/globals.h include/libxml/parser.h: doing some
  refactoring of the SAXv1 interfaces, obsoleting a bunch of them
  while keeping functionalities, preparing SAX2 integration.
* dict.c: small cleanup.
Daniel
2003-08-20 22:54:39 +00:00
Daniel Veillard
6155d8aafa optimization when freeing hash tables. some tuning of buffer allocations
* dict.c hash.c: optimization when freeing hash tables.
* parser.c xmlIO.c include/libxml/tree.h: some tuning of buffer
  allocations
* parser.c parserInternals.c include/libxml/parser.h: keep a
  single allocated block for all the attributes callbacks,
  avoid useless malloc()/free()
* tree.c: do not realloc() when growing a buffer if the buffer
  ain't full, malloc/memcpy/free avoid copying memory.
Daniel
2003-08-19 15:01:28 +00:00
Daniel Veillard
2fdbd32d51 new dictionary module to keep a single instance of the names used by the
* dict.c include/libxml/dict.h Makefile.am include/libxml/Makefile.am:
  new dictionary module to keep a single instance of the names used
  by the parser
* DOCBparser.c HTMLparser.c parser.c parserInternals.c valid.c:
  switched all parsers to use the dictionary internally
* include/libxml/HTMLparser.h include/libxml/parser.h
  include/libxml/parserInternals.h include/libxml/valid.h:
  Some of the interfaces changed as a result to receive or return
  "const xmlChar *" instead of "xmlChar *", this is either
  insignificant from an user point of view or when the returning
  value changed, those function are really parser internal methods
  that no user code should really change
* doc/libxml2-api.xml doc/html/*: the API interface changed and
  the docs were regenerated
Daniel
2003-08-18 12:15:38 +00:00
William M. Brack
7a82165d2e Minor changes to comments, etc. for improving documentation generation
* encoding.c, threads.c, include/libxml/HTMLparser.h,
  doc/libxml2-api.xml: Minor changes to comments, etc. for
  improving documentation generation
* doc/Makefile.am: further adjustment to auto-generation of
  win32/libxml2.def.src
2003-08-15 07:27:40 +00:00
Daniel Veillard
9848532c2a get rid of some compilation warnings. fix the performance problem reported
* DOCBparser.c globals.c include/libxml/xmlmemory.h: get rid of
  some compilation warnings.
* xinclude.c: fix the performance problem reported by Kevin Ruscoe
  plus some cleanup and better error reporting.
Daniel
2003-08-14 15:44:40 +00:00
Daniel Veillard
ab1ae3a768 applied UTF-16 encoding handling patch provided by Mark Itzcovitz more
* encoding.c: applied UTF-16 encoding handling patch provided by
  Mark Itzcovitz
* encoding.c parser.c: more cleanup and fixes for UTF-16 when
  not having iconv support.
Daniel
2003-08-14 12:19:54 +00:00
Daniel Veillard
0ab6fa01f5 changing an enum definition to get a correct API XML description. This was
* include/libxml/xmlreader.h doc/libxml2-api.xml: changing an enum
  definition to get a correct API XML description. This was apparently
  breaking Windows build.
Daniel
2003-08-09 18:01:53 +00:00
William M. Brack
c193956ee1 small changes to syntax to get rid of compiler warnings. No changes to
* error.c HTMLparser.c testC14N.c testHTML.c testURI.c
  xmlcatalog.c xmlmemory.c xmlreader.c xmlschemastypes.c
  python/libxml.c include/libxml/xmlmemory.h: small changes
  to syntax to get rid of compiler warnings.  No changes
  to logic.
2003-08-05 15:52:22 +00:00
Daniel Veillard
8d73bcb50f added a new API to split a QName without generating any memory allocation
* tree.c include/libxml/tree.h: added a new API to split a
  QName without generating any memory allocation
* valid.c: fixed another problem with namespaces on element
  in mixed content case
* python/tests/reader2.py: updated the testcase with
  Bjorn Reese fix to reader for unsignificant white space
* parser.c HTMLparser.c: cleanup.
Daniel
2003-08-04 01:06:15 +00:00
Daniel Veillard
d6038e0283 applying cleanup patch from Bjorn Reese for xmlTextReaderNodeType() and
* xmlreader.c include/libxml/xmlreader.h: applying cleanup
  patch from Bjorn Reese for xmlTextReaderNodeType() and
  significant whitespace. There is an enum for node type
  values now.
Daniel
2003-07-30 16:37:18 +00:00
Daniel Veillard
01fc1a9d5a applying patch from Peter Jacobi to added ISO-8859-x encoding support when
* encoding.c: applying patch from Peter Jacobi to added
  ISO-8859-x encoding support when iconv is not available
* configure.in include/libxml/xmlversion.h.in
  include/libxml/xmlwin32version.h.in: added the glue needed
  at the configure level and made it the default for Windows
Daniel
2003-07-30 15:12:01 +00:00
William M. Brack
4a557d97bf fixed problem with comments reported by Nick Kew added routines
* HTMLparser.c: fixed problem with comments reported by Nick Kew
* encoding.c: added routines xmlUTF8Size and xmlUTF8Charcmp for
  some future cleanup of UTF8 handling
2003-07-29 04:28:04 +00:00
Daniel Veillard
8edf1c5c6c added a new API xmlXIncludeProcessTree() to process XInclude only on a
* xinclude.c include/libxml/xinclude.h: added a new API
  xmlXIncludeProcessTree() to process XInclude only on a subtree
  this should fix bug #115385
Daniel
2003-07-22 20:52:14 +00:00
Daniel Veillard
409a8147c1 adding Get interface for the error callback and parameters of parsing and
* relaxng.c include/libxml/relaxng.h: adding Get interface for
  the error callback and parameters of parsing and validation
  contexts
* xmlreader.c: patch to fix bug #117702 about incomplete Read()
  on text nodes.
Daniel
2003-07-18 15:16:57 +00:00
Igor Zlatkovic
72f92a882c applied the BCB patch by Eric Zurcher 2003-06-14 16:48:26 +00:00
Daniel Veillard
a37aab845c applied a patch from Gman for building docs applied a patch from Gary
* doc/*: applied a patch from Gman for building docs
* valid.c xmllint.c include/libxml/valid.h: applied a patch from
  Gary Pennington to provide an allocator for xmlValidCtxt
* xmlreader.c: applied patch from Jacek Konieczny fixing bug
  #113580 about data not being passed immediately.
Daniel
2003-06-09 09:10:36 +00:00
Daniel Veillard
a84c0b30c4 commiting some work done while in the Maldives (hence the timezone on the
* relaxng.c xmlschemas.c include/libxml/schemasInternals.h: commiting
  some work done while in the Maldives (hence the timezone on the
  laptop !)
* result/schemas/length3* test/schemas/deter0_*
  test/schemas/group0_*: some tests added too
Daniel
2003-06-02 16:58:46 +00:00
Daniel Veillard
781ac8b19b patch from Stphane Bidoul for setting up threads global defaults. this
* build_glob.py global.data globals.c parser.c
  include/libxml/globals.h: patch from Stphane Bidoul for setting
  up threads global defaults.
* doc/libxml2-api.xml: this extends the API with new functions
* python/tests/Makefile.am python/tests/reader2.py
  python/tests/thread2.py: integrated the associated testcase and
  fixed the error string used in reader2
Daniel
2003-05-15 22:11:36 +00:00
Daniel Veillard
75bb3bbf25 added --schema option to run WXS schema validation tried to improve error
* xmllint.c: added --schema option to run WXS schema validation
* xmlschemas.c xmlschemastypes.c include/libxml/schemasInternals.h:
  tried to improve error reporting in the Schema code, some cleanup
  too.
Daniel
2003-05-12 15:25:56 +00:00
Daniel Veillard
a76fe5ca11 integrated the Out Of Memory test from Havoc Pennington #109368 a lot of
* Makefile.am testOOM.c testOOMlib.[ch] : integrated the Out Of
  Memory test from Havoc Pennington #109368
* SAX.c parser.c parserInternals.c tree.c uri.c valid.c
  xmlmemory.c xmlreader.c xmlregexp.c include/libxml/tree.h
  include/libxml/parser.h: a lot of memory allocation cleanups
  based on the results of the OOM testing
* check-relaxng-test-suite2.py: seems I forgot to commit the
  script.
Daniel
2003-04-24 16:06:47 +00:00
Daniel Veillard
a880b12475 a lot of performance work especially the speed of streaming through the
* globals.c libxml.h parser.c parserInternals.c tree.c xmllint.c
  xmlreader.c include/libxml/parser.h: a lot of performance work
  especially the speed of streaming through the reader and push
  interface. Some thread related optimizations. Nearly doubled the
  speed of parsing through the reader.
Daniel
2003-04-21 21:36:41 +00:00
Daniel Veillard
3c908dca47 added xmlMallocAtomic() to be used when allocating blocks which do not
* DOCBparser.c HTMLparser.c c14n.c catalog.c encoding.c globals.c
  nanohttp.c parser.c parserInternals.c relaxng.c tree.c uri.c
  xmlmemory.c xmlreader.c xmlregexp.c xpath.c xpointer.c
  include/libxml/globals.h include/libxml/xmlmemory.h: added
  xmlMallocAtomic() to be used when allocating blocks which
  do not contains pointers, add xmlGcMemSetup() and xmlGcMemGet()
  to allow registering the full set of functions needed by
  a garbage collecting allocator like libgc, ref #109944
Daniel
2003-04-19 00:07:51 +00:00
Daniel Veillard
3e59fc52d5 added support for large file, tested with a 3+GB instance, and some
* libxml.h include/libxml/parser.h parser.c xmlIO.c DOCBparser.c:
  added support for large file, tested with a 3+GB instance,
  and some cleanup.
* catalog.c: added a TODO
* Makefile.am: added some "make tests" comments
Daniel
2003-04-18 12:34:58 +00:00
Daniel Veillard
33300b49f0 augnemting the APIs, cleanups. cleanup bug #111005 added some missing
* include/libxml/relaxng.h relaxng.c include/libxml/xmlreader.h
  xmlreader.c: augnemting the APIs, cleanups.
* parser.c: cleanup bug #111005
* xmlIO.c: added some missing comments
Daniel
2003-04-17 09:09:19 +00:00
Daniel Veillard
f4e5576f8f implemented streaming of RelaxNG (when possible) on top of the xmlReader
* relaxng.c xmlreader.c xmllint.c include/libxml/relaxng.h
  include/libxml/xmlreader.h: implemented streaming of
  RelaxNG (when possible) on top of the xmlReader interface,
  provided it as xmllint --stream --relaxng .rng .xml
  This seems to mostly work.
* Makefile.am: updated to test RelaxNG streaming
Daniel
2003-04-15 23:32:22 +00:00
Daniel Veillard
c58f4efbd4 integrated the regexp based validity checking of fragments of the document
* relaxng.c include/libxml/relaxng.h: integrated the regexp
  based validity checking of fragments of the document for
  which the RNG can be compiled to regexps. Works on all regression
  tests, only fix needed is related to error messages.
Daniel
2003-04-14 16:11:26 +00:00
Daniel Veillard
52b48c7a7b Starting work precompiling parts of RelaxNG schemas. Not plugged onto
* relaxng.c xmlregexp.c include/libxml/xmlautomata.h
  include/libxml/xmlregexp.h: Starting work precompiling
  parts of RelaxNG schemas. Not plugged onto validity checking
  yet, just the regexp building part. Needed to extend some
  of the automata and regexp APIs.
Daniel
2003-04-13 19:53:42 +00:00
Daniel Veillard
f6bad798cf make sure xmllint --stream and xmllint --stream --valid returns errors
* xmllint.c xmlreader.c include/libxml/xmlreader.h: make sure
  xmllint --stream and xmllint --stream --valid returns errors
  code appropriately
Daniel
2003-04-11 19:38:54 +00:00
Daniel Veillard
c6cae7b690 Added the Expand() and Next() operation to work on subtrees within the
* xmlreader.c include/libxml/xmlreader.h: Added the Expand()
  and Next() operation to work on subtrees within the reader
  framework.
* doc/libxml2-api.xml python/libxml2class.txt: resulting updates
* python/tests/reader5.py: added an example for those new
  functions of the reader.
Daniel
2003-04-11 09:02:11 +00:00
Daniel Veillard
02ea141495 exported htmlCreateMemoryParserCtxt() it was static Daniel
* HTMLparser.c include/libxml/HTMLparser.h:  exported
  htmlCreateMemoryParserCtxt() it was static
Daniel
2003-04-09 12:08:47 +00:00
Daniel Veillard
d3b9cd88d5 update from Charles Bozeman for date and duration types updated too Daniel
* xmlschemas.c xmlschemastypes.c include/libxml/xmlschemas.h:
  update from Charles Bozeman for date and duration types
* test/schemas/date_0.* test/schemas/dur_0.*
  result/schemas/date_0.* result/schemas/dur_0.*: updated too
Daniel
2003-04-09 11:24:17 +00:00
Daniel Veillard
c00cda8c06 fixing bug #107129, removing excessive allocation and calls to *printf in
* tree.c valid.c xpath.c include/libxml/tree.h include/libxml/valid.h:
  fixing bug #107129, removing excessive allocation and calls
  to *printf in the code to build QName strings.
Daniel
2003-04-07 10:22:39 +00:00