1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-10-21 14:53:44 +03:00
Commit Graph

341 Commits

Author SHA1 Message Date
Aleksey Sanin
b5a46da41d added xmlStrVPrintf function 2003-10-29 15:51:17 +00:00
Daniel Veillard
e4e3f5d8af preparing release 2.6.1, updated and regenerated docs and APIs cleanup and
* configure.in NEWS doc/*: preparing release 2.6.1, updated and
  regenerated docs and APIs
* parser.c: cleanup and last change to fix #123105
Daniel
2003-10-28 23:06:32 +00:00
Daniel Veillard
9ba8e389a2 included a new function to reuse a Push parser context, based on Graham
* parser.c include/libxml/parser.h: included a new function
  to reuse a Push parser context, based on Graham Bennett original
  code
* valid.c: in HTML, a name in an input is not an ID
* TODO: bug list update
Daniel
2003-10-28 21:31:45 +00:00
Daniel Veillard
f5cb3cd9e9 fixed #123263, the encoding is mandatory in a textdecl. Daniel
* parser.c: fixed #123263, the encoding is mandatory in a textdecl.
Daniel
2003-10-28 13:58:13 +00:00
Daniel Veillard
95d2d5b1cf applied patch from #123105 about defaulted attributes from element coming
* parser.c: applied patch from #123105 about defaulted attributes
  from element coming from an entity
Daniel
2003-10-27 14:54:49 +00:00
Daniel Veillard
cc199e0e56 applied patch from Patrick Welche provided in bug #125432 , future
* libxml.m4: applied patch from Patrick Welche provided in
  bug #125432 , future proofing the .m4 file.
* parser.c: resetting the context should also reset the error
* TODO: problem of conformance w.r.t. E20 was raised in the
  XML Core telconf and libxml2 isn't conformant there.
Daniel
2003-10-24 21:11:48 +00:00
Daniel Veillard
198c1bfc1c removing xmldwalk module since it got merged with the xmlreader. cleanup
* Makefile.am configure.in xmldwalk.c xmlreader.c
  include/libxml/Makefile.am include/libxml/xmldwalk.h
  include/libxml/xmlversion.h.in: removing xmldwalk module
  since it got merged with the xmlreader.
* parser.c: cleanup
* win32/libxml2.def.src python/libxml2class.txt doc/libxml2-api.xml:
  rebuilt the API
* python/tests/Makefile.am python/tests/reader7.py
  python/tests/walker.py: adding regression testing for the
  new xmlreader APIs, new APIs for reader creation, including
  makeing reader "walker" operating on preparsed document trees.
Daniel
2003-10-20 17:07:41 +00:00
Daniel Veillard
a07050ddac applied patch from Chris Anderson to change back memcmp with CMPx() Daniel
* parser.c: applied patch from Chris Anderson to change back
  memcmp with CMPx()
Daniel
2003-10-19 14:46:32 +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
4aede2e66b remove the warning for startDocument(), as it is used by glade (or
* legacy.c: remove the warning for startDocument(), as it is used by
  glade (or glade-python)
* parser.c relaxng.c xmlschemastypes.c: fixed an assorted set of
  invalid accesses found by running some Python based regression
  tests under valgrind. There is still a few leaks reported by the
  relaxng regressions which need some attention.
* doc/Makefile.am: fixed a make install problem c.f. #124539
* include/libxml/parserInternals.h: addition of xmlParserMaxDepth
  patch from crutcher
Daniel
2003-10-17 12:43:59 +00:00
Daniel Veillard
04054becf6 Marc Liyanage pointed out that xmlCleanupParser() was missing
* parser.c: Marc Liyanage pointed out that xmlCleanupParser()
  was missing xmlCleanupInputCallbacks and xmlCleanupOutputCallbacks
  calls.
Daniel
2003-10-15 10:48:54 +00:00
Daniel Veillard
9bcc7c5a8e Dohhh ! Daniel
Dohhh !
Daniel
2003-10-11 10:57:05 +00:00
Daniel Veillard
c790bf4b36 patch from Mike Hommey applied Windows patch from Jesse Pelton and
* configure.in: patch from Mike Hommey
* threads.c: applied Windows patch from Jesse Pelton and Stephane
  Bidoul
* parser.c: fix the potentially nasty access to ctxt->serror
  without checking first that the SAX block is version 2
Daniel
2003-10-11 10:50:10 +00:00
Daniel Veillard
2b0f879908 fixed a nasty bug with interning some text strings prepare for beta5 of
* SAX2.c: fixed a nasty bug with interning some text strings
* configure.in: prepare for beta5 of 2.6.0
* libxml.h nanoftp.c nanohttp.c xmlIO.c include/libxml/xmlerror.h:
  better error handling for I/O and converted FTP and HTTP
* parser.c: fixed another bug
Daniel
2003-10-10 19:36:36 +00:00
Daniel Veillard
659e71ec24 Setting up the framework for structured error reporting, touches a lot of
* HTMLparser.c c14n.c catalog.c error.c globals.c parser.c
  parserInternals.c relaxng.c valid.c xinclude.c xmlIO.c xmlregexp.c
  xmlschemas.c xpath.c xpointer.c include/libxml/globals.h
  include/libxml/parser.h include/libxml/valid.h
  include/libxml/xmlerror.h: Setting up the framework for structured
  error reporting, touches a lot of modules, but little code now
  the error handling trail has been cleaned up.
Daniel
2003-10-10 14:10:40 +00:00
Daniel Veillard
b65e12e3c5 bug in compression saving was crashing galeon, reported by teuf Daniel
* parser.c: bug in compression saving was crashing galeon, reported by teuf
Daniel
2003-10-08 21:33:28 +00:00
Daniel Veillard
d96f6d3429 cleaning up XPath error reporting that time. applied the two patches for
* error.c include/libxml/xmlerror.h include/libxml/xpath.h
  include/libxml/xpathInternals.h xpath.c: cleaning up XPath
  error reporting that time.
* threads.c: applied the two patches for TLS threads
  on Windows from Jesse Pelton
* parser.c: tiny safety patch for xmlStrPrintf() make sure the
  return is always zero terminated. Should also help detecting
  passing wrong buffer size easilly.
* result/VC/* result/valid/rss.xml.err result/valid/xlink.xml.err:
  updated the results to follow the errors string generated by
  last commit.
Daniel
2003-10-07 21:25:12 +00:00
Daniel Veillard
8f597c3bf5 fixing the script replace sequences of RAW && NXT(.) == '.' with memcmp
* check-xml-test-suite.py: fixing the script
* parser.c: replace sequences of RAW && NXT(.) == '.' with
  memcmp calls, seems to not break conformance, slightly inflate
  the size of the gcc generated code though.
Daniel
2003-10-06 08:19:27 +00:00
Daniel Veillard
ce9457f3aa more cleanup of error handling in parserInternals, sharing the routine for
* parserInternals.c parser.c valid.c include/libxml/parserInternals.h:
  more cleanup of error handling in parserInternals, sharing the
  routine for memory errors.
Daniel
2003-10-05 21:33:18 +00:00
Daniel Veillard
f403d298c3 more code cleanup, especially around error messages, the HTML parser has
* HTMLparser.c Makefile.am legacy.c parser.c parserInternals.c
  include/libxml/xmlerror.h: more code cleanup, especially around
  error messages, the HTML parser has now been upgraded to the new
  handling.
* result/HTML/*: a few changes in the resulting error messages
Daniel
2003-10-05 13:51:35 +00:00
Daniel Veillard
24eb97851d more error/warning handling cleanups, the XML parser module should be okay
* parser.c include/libxml/xmlerror.h: more error/warning
  handling cleanups, the XML parser module should be okay now.
Daniel
2003-10-04 21:08:09 +00:00
Daniel Veillard
bb5ababa28 more cleanup in make tests more work in the transition to the new error
* Makefile.am: more cleanup in make tests
* error.c valid.c parser.c include/libxml/xmlerror.h: more work
  in the transition to the new error reporting strategy.
* python/tests/reader2.py  result/VC/* result/valid/*:
  few changes in the strings generated by the validation output
Daniel
2003-10-03 22:21:51 +00:00
Daniel Veillard
2b8c4a151b changed 'make tests' to use a concise output, scrolling to see where thing
* Makefile.am: changed 'make tests' to use a concise output,
  scrolling to see where thing broke wasn't pleasant
* configure.in: some beta4 preparation, but not ready yet
* error.c globals.c include/libxml/globals.h include/libxml/xmlerror.h:
  new error handling code, last error informations are stored
  in the parsing context or a global variable, new APIs to
  handle the xmlErrorPtr type.
* parser.c parserInternals.c valid.c : started migrating to the
  new error handling code, it's a royal pain.
* include/libxml/parser.h include/libxml/parserInternals.h:
  moved the definition of xmlNewParserCtxt()
* parser.c: small potential buffer access problem in push code
  provided by Justin Fletcher
* result/*.sax result/VC/PENesting* result/namespaces/*
  result/valid/*.err: some error messages were sligthly changed.
Daniel
2003-10-02 22:28:19 +00:00
Aleksey Sanin
e7acf431b8 introduced xmlStrPrintf function - wrapper for snprintf 2003-10-02 20:05:27 +00:00
Daniel Veillard
d3a2e4c2b3 made the predefined entities static predefined structures to avoid the
* entities.c legacy.c parser.c: made the predefined entities
  static predefined structures to avoid the work, memory and
  hazards associated to initialization/cleanup.
Daniel
2003-09-30 13:38:04 +00:00
Daniel Veillard
73b013fc17 added a new configure option --with-push, some cleanups, chased code size
* HTMLparser.c Makefile.am configure.in legacy.c parser.c
  parserInternals.c testHTML.c xmllint.c include/libxml/HTMLparser.h
  include/libxml/parser.h include/libxml/parserInternals.h
  include/libxml/xmlversion.h.in: added a new configure
  option --with-push, some cleanups, chased code size anomalies.
  Now a library configured --with-minimum is around 150KB,
  sounds good enough.
Daniel
2003-09-30 12:36:01 +00:00
Daniel Veillard
8127390f03 added 2 new configure option: --with-reader --with-sax1 to allow removing
* Makefile.am SAX.c SAX2.c configure.in globals.c parser.c
  parserInternals.c testReader.c testSAX.c xmlIO.c xmllint.c
  xmlreader.c example/gjobread.c include/libxml/xmlversion.h.in:
  added 2 new configure option: --with-reader --with-sax1
  to allow removing the reader or non-xmlReadxxx() interfaces.
Daniel
2003-09-30 00:43:48 +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
9ee35f3643 fix a bug raised by the Mips compiler. move the SAXv1 block definitions to
* parser.c: fix a bug raised by the Mips compiler.
* include/libxml/SAX.h include/libxml/parser.h: move the
  SAXv1 block definitions to parser.h fixes bug #123380
* xmlreader.c include/libxml/xmlreader.h: reinstanciate
  the attribute and element pool borken 2 commits ago.
  Start playing with an entry point to preserve a subtree.
* entities.c: remove a warning.
Daniel
2003-09-28 00:19:54 +00:00
William M. Brack
7b9154b01e further (final?) minor changes for compilation warnings. No change to
* encoding.c, parser.c, relaxng.c: further (final?) minor
  changes for compilation warnings. No change to logic.
2003-09-27 19:23:50 +00:00
William M. Brack
b670e2ebbe fixed small problem with missing entities (test/ent2)
* parser.c: fixed small problem with missing entities (test/ent2)
2003-09-27 01:05:55 +00:00
Daniel Veillard
9d8c1dfbb3 William's change allowed to spot a nasty bug in xmlDoRead if the result is
* parser.c: William's change allowed to spot a nasty bug in xmlDoRead
  if the result is well formed that ctxt->myDoc is not NULL and uses
  the context dictionnary.
Daniel
2003-09-26 23:27:25 +00:00
Daniel Veillard
7d515754a3 other patches from William Brack to avoid compilation warnings on AIX.
* parser.c: other patches from William Brack to avoid
  compilation warnings on AIX.
Daniel
2003-09-26 19:12:37 +00:00
Daniel Veillard
dca8cc79db rebuilt the API added the new options --nocdata and --nsclean to remove
* doc/libxml2-api.xml: rebuilt the API
* xmllint.c doc/xmllint.1 doc/xmllint.xml: added the new options
  --nocdata and --nsclean to remove CDATA section and surperfluous
  namespace declarations
* parser.c SAX2.c: implementation of the 2 new options
Daniel
2003-09-26 13:53:14 +00:00
Daniel Veillard
60942def6a Changed the new xmlRead/xmlCtxtRead APIs to have an extra base URL
* parser.c xmllint.c doc/libxml2-api.xml include/libxml/parser.h:
  Changed the new xmlRead/xmlCtxtRead APIs to have an extra
  base URL parameter when not loading from a file or URL.
Daniel
2003-09-25 21:05:58 +00:00
Daniel Veillard
092643b52d preparing a beta3 solving the ABI problems make sure the global variables
* configure.in: preparing a beta3 solving the ABI problems
* globals.c parser.c parserInternals.c testHTML.c HTMLparser.c SAX.c
  include/libxml/globals.h include/libxml/SAX.h: make sure the
  global variables for the default SAX handler are V1 ones to
  avoid ABI compat problems.
* xmlreader.c: cleanup of uneeded code
* hash.c: fix a comment
Daniel
2003-09-25 14:29:29 +00:00
Daniel Veillard
7a02cfe0d7 fixing some comments to avoid warnings from apibuild.py Daniel
* SAX2.c hash.c parser.c include/libxml/xmlexports.h
  include/libxml/xmlmemory.h include/libxml/xmlversion.h.in:
  fixing some comments to avoid warnings from apibuild.py
Daniel
2003-09-25 12:18:34 +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
1f40d68043 revert xmlCreateDocParserCtxt() since this break the parseDoc() python
* parser.c: revert xmlCreateDocParserCtxt() since this break
  the parseDoc() python bindings
Daniel
2003-09-23 09:16:56 +00:00
Daniel Veillard
309f81d503 make sure xmlDetectSAX2() is called only at parsing time to avoid breaking
* parser.c: make sure xmlDetectSAX2() is called only at
  parsing time to avoid breaking apps changing the SAX
  callbacks after context allocation, change xmlCreateDocParserCtxt()
  to use an immutable buffer instead of a copy
Daniel
2003-09-23 09:02:53 +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
9f7eb0bba3 started messing seriously with per-document dict and element and attribute
* SAX2.c parser.c parserInternals.c xmlreader.c: started messing
  seriously with per-document dict and element and attribute nodes
  reuse in the xmlReader. This seems to lead to an interesting
  speedup of the xmlReader already.
Daniel
2003-09-17 10:26:25 +00:00
Daniel Veillard
62998c0ec7 starting to cleanup some of the problems exposed by the W3C/NIST
* SAX2.c parser.c valid.c: starting to cleanup some of the
  problems exposed by the W3C/NIST regression suite.
* result/ent7.sax result/xml2.sax: small fixes.
Daniel
2003-09-15 12:56:36 +00:00
Daniel Veillard
bc92ecad5c more parser error factoring Daniel
* parser.c: more parser error factoring
Daniel
2003-09-15 09:48:06 +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
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
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