1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-01-14 19:24:06 +03:00

297 Commits

Author SHA1 Message Date
Daniel Veillard
2f6ff81a4a tentative fix for #126117 character reference in attributes output problem
* tree.c: tentative fix for #126117 character reference in
  attributes output problem in some cornercase.
Daniel
2003-12-08 12:11:14 +00:00
William M. Brack
d7cf7f8dc9 minor changes to some comments rebuilt the generated HTML pages for
* tree.c: minor changes to some comments
* doc/*.html: rebuilt the generated HTML pages for changes
  from jfleck (bug 126945)
2003-11-14 07:13:16 +00:00
Daniel Veillard
254b12607d second BeOS patch from Marcin 'Shard' Konicki Daniel
* tree.c nanohttp.c threads.c: second BeOS patch from
  Marcin 'Shard' Konicki
Daniel
2003-11-01 17:04:58 +00:00
Daniel Veillard
e22dd5ce8c applied a couple of patches from Mark Lilback about text nodes coalescing
* tree.c: applied a couple of patches from Mark Lilback about text
  nodes coalescing
Daniel
2003-10-29 12:53:27 +00:00
Daniel Veillard
f4e5629809 applied patch from Kasimier Buchcik which fixes a problem in xmlSearchNs
* tree.c: applied patch from Kasimier Buchcik which fixes a
  problem in xmlSearchNs introduced in 2.6.0
Damniel
2003-10-28 14:27:41 +00:00
Daniel Veillard
cec50a6aff fix bug #125047 about serializing when finding a document fragment node.
* tree.c: fix bug #125047 about serializing when finding a
  document fragment node.
Daniel
2003-10-28 13:26:51 +00:00
Daniel Veillard
2189b59b10 last minute patch from Eric Zurcher making it into 2.6.0 Daniel
* tree.c: last minute patch from Eric Zurcher making it into 2.6.0
Daniel
2003-10-21 00:08:42 +00:00
Daniel Veillard
3e35f8e658 preparing libxml2-2.6.0 updated and regenerated the docs and API moved the
* configure.in NEWS doc/libxml2.xsa: preparing libxml2-2.6.0
* doc/*: updated and regenerated the docs and API
* SAX2.c error.c tree.c: moved the line number to their proper
  field in elements now.
Daniel
2003-10-21 00:05:38 +00:00
Daniel Veillard
c469692e5d cleanup xmlNodeGetContent() reusing xmlNodeBufGetContent(), tested it
* tree.c: cleanup xmlNodeGetContent() reusing xmlNodeBufGetContent(),
  tested it through the xslt regression suite.
Daniel
2003-10-19 21:47:14 +00:00
Daniel Veillard
7869729c8e adding xmlNodeBufGetContent() allowing to grab the content without forcing
* tree.c include/libxml/tree.h: adding xmlNodeBufGetContent()
  allowing to grab the content without forcing allocations.
* python/libxml2class.txt doc/libxml2-api.xml: rebuilt the API
* xpath.c xmldwalk.c: removed a couple of comment errors.
Daniel
2003-10-19 20:44:43 +00:00
William M. Brack
9ca682f527 fixed segfault when input file not present changed output formatting of
* xmlIO.c: fixed segfault when input file not present
* tree.c: changed output formatting of XML_CDATA_SECTION
  (bug 120917)
2003-10-19 10:01:59 +00:00
William M. Brack
76e95df055 Changed all (?) occurences where validation macros (IS_xxx) had
* include/libxml/parserInternals.h HTMLparser.c HTMLtree.c
  SAX2.c catalog.c debugXML.c entities.c parser.c relaxng.c
  testSAX.c tree.c valid.c xmlschemas.c xmlschemastypes.c
  xpath.c: Changed all (?) occurences where validation macros
  (IS_xxx) had single-byte arguments to use IS_xxx_CH instead
  (e.g. IS_BLANK changed to IS_BLANK_CH).  This gets rid of
  many warning messages on certain platforms, and also high-
  lights places in the library which may need to be enhanced
  for proper UTF8 handling.
2003-10-18 16:20:14 +00:00
William M. Brack
871611bb03 enhanced macros to avoid breaking ABI from previous versions. modified to
* genChRanges.py, chvalid.c, include/libxml/chvalid.h,
  include/libxml/parserInternals.h: enhanced macros to avoid
  breaking ABI from previous versions.
* catalog.c, parser.c, tree.c: modified to use IS_* macros
  defined in parserInternals.h.  Makes maintenance much easier.
* testHTML.c, testSAX.c, python/libxml.c: minor fixes to avoid
  compilation warnings
* configuration.in: fixed pushHTML test error; enhanced for
  better devel (me) testing
2003-10-18 04:53:14 +00:00
Daniel Veillard
e2238d5617 converted too small cleanup Daniel
* HTMLtree.c include/libxml/xmlerror.h: converted too
* tree.c: small cleanup
Daniel
2003-10-09 13:14:55 +00:00
Daniel Veillard
828ce83d4c more cleanup through the I/O error path Daniel
* error.c tree.c xmlIO.c xmllint.c: more cleanup through the
  I/O error path
Daniel
2003-10-08 19:19:10 +00:00
Daniel Veillard
18ec16e763 converting the tree module too created a simpler internal error reporting
* tree.c: converting the tree module too
* error.c include/libxml/xmlerror.h: created a simpler internal
  error reporting function.
Daniel
2003-10-07 23:16:40 +00:00
Daniel Veillard
652327a727 Adding a configure option to remove tree manipulation code which is not
* configure.in entities.c tree.c valid.c xmllint.c
  include/libxml/tree.h include/libxml/xmlversion.h.in:
  Adding a configure option to remove tree manipulation
  code which is not strictly needed by the parser.
Daniel
2003-09-29 18:02:38 +00:00
Daniel Veillard
a9cce9cd0d Okay this is scary but it is just adding a configure option to disable
* HTMLtree.c SAX2.c c14n.c catalog.c configure.in debugXML.c
  encoding.c entities.c nanoftp.c nanohttp.c parser.c relaxng.c
  testAutomata.c testC14N.c testHTML.c testRegexp.c testRelax.c
  testSchemas.c testXPath.c threads.c tree.c valid.c xmlIO.c
  xmlcatalog.c xmllint.c xmlmemory.c xmlreader.c xmlschemas.c
  example/gjobread.c include/libxml/HTMLtree.h include/libxml/c14n.h
  include/libxml/catalog.h include/libxml/debugXML.h
  include/libxml/entities.h include/libxml/nanohttp.h
  include/libxml/relaxng.h include/libxml/tree.h
  include/libxml/valid.h include/libxml/xmlIO.h
  include/libxml/xmlschemas.h include/libxml/xmlversion.h.in
  include/libxml/xpathInternals.h python/libxml.c:
  Okay this is scary but it is just adding a configure option
  to disable output, this touches most of the files.
Daniel
2003-09-29 13:20:24 +00:00
Daniel Veillard
4432df239b cleanup, creating a new legacy.c module, made sure make tests ran in
* Makefile.am: cleanup, creating a new legacy.c module,
  made sure make tests ran in reduced conditions
* SAX.c SAX2.c configure.in entities.c globals.c parser.c
  parserInternals.c tree.c valid.c xlink.c xmlIO.c xmlcatalog.c
  xmlmemory.c xpath.c xmlmemory.c include/libxml/xmlversion.h.in:
  increased the modularization, allow to configure out
  validation code and legacy code, added a configuration
  option --with-minimum compiling only the mandatory code
  which then shrink to 200KB.
Daniel
2003-09-28 18:58:27 +00:00
Daniel Veillard
9475a352bd added the same htmlRead APIs than their XML counterparts new parser
* HTMLparser.c testHTML.c xmllint.c include/libxml/HTMLparser.h:
  added the same htmlRead APIs than their XML counterparts
* include/libxml/parser.h: new parser options, not yet implemented,
  added an options field to the context.
* tree.c: patch from Shaun McCance to fix bug #123238 when ]]>
  is found within a cdata section.
* result/noent/cdata2 result/cdata2 result/cdata2.rdr
  result/cdata2.sax test/cdata2: add one more cdata test
Daniel
2003-09-26 12:47:50 +00:00
Daniel Veillard
e96a2a4bf0 adding repeated parsing and validating tests make the new DOM tree
* Makefile.am: adding repeated parsing and validating tests
* SAX2.c parser.c tree.c include/libxml/parser.h: make the new
  DOM tree building interfaces use the dictionary from the
  parsing context to build the element and attributes names
  as well as formatting spaces and short text nodes
* include/libxml/dict.h dict.c: added some reference counting
  for xmlDictPtr because they can be shared by documents and
  a parser context.
* xmlreader.c: a bit of cleanup, remove the specific tree freeing
  functions and use the standard ones now.
* xmllint.c: add --nodict
* python/libxml.c: fix a stupid bug so that ns() works on
  attribute nodes.
Daniel
2003-09-24 21:23:56 +00:00
Daniel Veillard
16fa96c5d0 adding a new set of API for parsing xmlReadDoc() xmlReadFile() ...
* parser.c include/libxml/parser.h: adding a new set of
  API for parsing xmlReadDoc() xmlReadFile() ... xmlReadIO()
  and xmlCtxtReadDoc() ... xmlCtxtReadIO(). That with
  a clear define of xmlParserOption, xmlCtxtUseOptions()
  should simplify custom parsing without being tempted to
  use global variables, and xmlCtxtReset() should allow reuse
  of a context for multiple parsing.
* xmllint.c: switched to use xmlReadXXX, allow options to
  be used simultaneously with less troubles.
* tree.c: simple warning removal
* doc/apibuild.py: small fix
* doc/libxml2-api.xml win32/libxml2.def.src: updated
Daniel
2003-09-23 21:50:54 +00:00
Daniel Veillard
f85ce8e334 the uri arg to xmlNodeSetBase is really a const xmlChar* addin the
* tree.c include/libxml/tree.h: the uri arg to xmlNodeSetBase is
  really a const xmlChar*
* xmlreader.c include/libxml/xmlreader.h: addin the
  xmlTextReaderConstString() to get an interned string from
  the reader
Daniel
2003-09-22 10:24:45 +00:00
Daniel Veillard
e72c508cd0 preparing a 2.6.0-beta2 release avoid a warning avoid duplicate code in
* configure.in: preparing a 2.6.0-beta2 release
* xmlIO.c: avoid a warning
* tree.c: avoid duplicate code in xmlReplaceNode as pointed out
  by Chris Ryland
* include/libxml/dict.h: add a QName access lookup to the
  dictionary.
* xmlreader.c include/libxml/xmlreader.h: adding const access
  based on the dictionary interface for string read from the
  reader, the node content access is still TODO, it's too different
Daniel
2003-09-19 12:44:05 +00:00
Daniel Veillard
5335055ef6 add streaming on memory regression tests, found bad bugs in the reader
* Makefile.am: add streaming on memory regression tests, found
  bad bugs in the reader interface
* xmlreader.c: fixing bugs w.r.t. very large names, and special
  condition in end of file.
* xmlIO.c tree.c include/libxml/tree.h include/libxml/xmlIO.h:
  adding immutable buffers, and parser input based on those,
  but this should not be used (yet) for general parsing
* parser.c: added a comment about using immutable buffers for
  general parsing.
* result/bigname.xml.rdr result/bigname2.xml.rdr: fixing the
  output of the regression tests
* xmllint.c: using the immutable buffers when streaming on
  mmaped file (--stream --memory)
Daniel
2003-09-18 13:35:51 +00:00
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
2a3fea37e1 applied speedup to xmlSearchNs() as suggested by Luca Padovani. Cleaned up
* tree.c: applied speedup to xmlSearchNs() as suggested by
  Luca Padovani. Cleaned up xmlSearchNsByHref() in the process
  applying the same trick.
Daniel
2003-09-12 09:44:56 +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
Daniel Veillard
e5984080ea fixes a small bug introduced in last commit and detected by valgrind.
* tree.c: fixes a small bug introduced in last commit and detected
  by valgrind.
Daniel
2003-08-19 22:21:13 +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
70bcb0ea24 hum try to avoid some troubles when the library is not initialized and one
* HTMLtree.c tree.c threads.c: hum try to avoid some troubles
  when the library is not initialized and one try to save, the
  locks in threaded env might not been initialized, playing safe
* xmlschemastypes.c: apply patch for hexBinary from Charles Bozeman
* test/schemas/hexbinary_* result/schemas/hexbinary_*: also added
  his tests to the regression suite.
Daniel
2003-08-08 14:00:28 +00:00
Daniel Veillard
20aa0fb478 fixed a small problem in the patch for #118763 this reverts back to the
* tree.c: fixed a small problem in the patch for #118763
* result/HTML/doc3.htm*: this reverts back to the previous result
Daniel
2003-08-04 19:43:15 +00:00
Daniel Veillard
39057f40d6 fixing HTML attribute serialization bug #118763 applying a modified
* tree.c: fixing HTML attribute serialization bug #118763
  applying a modified version of the patch from Bacek
* result/HTML/doc3.htm*: this modifies the output from one test
Daniel
2003-08-04 01:33:43 +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
a6874ca47c applied Peter Jacobi encoding cleanup patch, and also avoided a possible
* parser.c parserInternals.c tree.c: applied Peter Jacobi encoding
  cleanup patch, and also avoided a possible memory leak
Daniel
2003-07-29 16:47:24 +00:00
Daniel Veillard
75eb1adc04 regenerated might fix includes problems with the Ipv6 support on solaris
* NEWS doc/*: regenerated
* nanoftp.c nanohttp.c: might fix includes problems with the
  Ipv6 support on solaris
* tree.c: patch from Markus Keim about xmlHasNsProp() on attributes
  defined as #IMPLIED
Daniel
2003-07-07 14:42:44 +00:00
Daniel Veillard
e13261148b applied a couple of patches from Mark Itzcovitz to handle saving back
* tree.c: applied a couple of patches from Mark Itzcovitz
  to handle saving back "UTF-16" documents.
Daniel
2003-06-05 09:32:20 +00:00
Daniel Veillard
d72c7e339c PI nodes in external subset were not freed :-\ fixes bug #112842 Daniel
* tree.c: PI nodes in external subset were not freed :-\
  fixes bug #112842
Daniel
2003-05-12 21:55:03 +00:00
Daniel Veillard
a067e656fd fixed a problem with xmlUnlinkNode() for DTDs. Daniel
* tree.c: fixed a problem with xmlUnlinkNode() for DTDs.
Daniel
2003-05-01 08:03:46 +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
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
Daniel Veillard
6560a42c7b two patches from James Bursa on the HTML parser and a typo reindenting,
* HTMLparser.c tree.c: two patches from James Bursa on the HTML
  parser and a typo
* xmlschemastypes.c: reindenting, fixing a memory access
  problem with dates.
Daniel
2003-03-27 21:25:38 +00:00
Daniel Veillard
9adc0469d4 some changes related to the new way of handling Result Value Tree, before
* tree.c xpath.c: some changes related to the new way of
  handling Result Value Tree, before 2.5.5
Daniel
2003-03-24 18:39:54 +00:00
Daniel Veillard
a1a9d04100 removed a warning more cleanup, added ENTITY and ENTITIES support
* tree.c: removed a warning
* xmlschemastypes.c: more cleanup, added ENTITY and ENTITIES
  support
* check-relaxng-test-suite.py check-xsddata-test-suite.py:
  cleanup/improvements of the regression tests batch
* test/relaxng/testsuite.xml: augmented libxml2 own testsuite
Daniel
2003-03-18 16:53:17 +00:00
Daniel Veillard
7b72ee5cfc fixed a node dump crash on attributes fixed an URI test bug and get better
* tree.c: fixed a node dump crash on attributes
* test/xsdtest/xsdtest.xml test/xsdtest/xsdtest.xsl: fixed
  an URI test bug and get better output.
Daniel
2003-02-27 23:24:53 +00:00
Daniel Veillard
3ebc7d43f7 fixed xmlSetProp and al. when the node passed is not an element. fixed
* tree.c: fixed xmlSetProp and al. when the node passed is not an
  element.
* relaxng.c: fixed bugs 7.3 (though not complete) and memory leaks
  found 373 test schemas: 369 success 4 failures
  found 529 test instances: 525 success 4 failures
* check-relaxng-test-suite.py: added memory debug reporting
Daniel
2003-02-24 17:17:58 +00:00
Daniel Veillard
c64b8e984c some warning removal on Igor's patch seems I messed up with #106788 fix
* uri.c parser.c: some warning removal on Igor's patch
* tree.c: seems I messed up with #106788 fix
* python/libxml.c: fixed some base problems when Python provides
  the resolver.
* relaxng.c: fixed the interleave algorithm
  found 373 test schemas: 364 success 9 failures
  found 529 test instances: 525 success 4 failures
  the resulting failures are bug in the algorithm from 7.3 and
  lack of support for params
Daniel
2003-02-24 11:47:13 +00:00