1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 20:25:14 +03:00
Commit Graph

90 Commits

Author SHA1 Message Date
Daniel Veillard
13cee4e37b 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()
2009-09-05 14:52:55 +02:00
Daniel Veillard
aa6de47ebf applied patch from Aswin to fix tree skipping fixed a comment and added a
* xmlreader.c: applied patch from Aswin to fix tree skipping
* include/libxml/entities.h entities.c: fixed a comment and
  added a new xmlNewEntity() entry point
* runtest.c: be less verbose
* tree.c: space and tabs cleanups
daniel

svn path=/trunk/; revision=3774
2008-08-25 14:53:31 +00:00
Daniel Veillard
f4f4e4853a 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
2008-08-25 08:57:48 +00:00
Daniel Veillard
4bf899bf1b 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
2008-08-20 17:04:30 +00:00
Daniel Veillard
a37a6ad91a 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
2006-10-10 20:05:45 +00:00
Daniel Veillard
2728f845c5 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
2006-03-09 16:49:24 +00:00
Daniel Veillard
5d4644ef6e 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
2005-04-01 13:11:58 +00:00
Daniel Veillard
316a5c3989 added xmlHashCreateDict where the hash reuses the dictionnary for internal
* hash.c include/libxml/hash.h: added xmlHashCreateDict where
  the hash reuses the dictionnary for internal strings
* entities.c valid.c parser.c: reuse that new API, leads to a decent
  speedup when parsing for example DocBook documents.
Daniel
2005-01-23 22:56:39 +00:00
Daniel Veillard
7da92709c8 small speedup in skipping blanks characters interning the entities strings
* parser.c: small speedup in skipping blanks characters
* entities.c: interning the entities strings
Daniel
2005-01-23 20:15:53 +00:00
Daniel Veillard
ce682bc24b 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
2004-11-05 17:22:25 +00:00
Daniel Veillard
8e725fb4de fixed a compilation problem on a recent change Daniel
* entities.c: fixed a compilation problem on a recent change
Daniel
2004-11-05 14:16:50 +00:00
Daniel Veillard
ce244ad595 fixed the way the generator works, extended the testing, especially with
* gentest.py testapi.c: fixed the way the generator works,
  extended the testing, especially with more real trees and nodes.
* HTMLtree.c tree.c valid.c xinclude.c xmlIO.c xmlsave.c: a bunch
  of real problems found and fixed.
* entities.c: fix error reporting to go through the new handlers
Daniel
2004-11-05 10:03:46 +00:00
Daniel Veillard
62040be360 avoid returning default namespace when searching from an attribute reverse
* tree.c: avoid returning default namespace when searching
  from an attribute
* entities.c xmlwriter.c: reverse xmlEncodeSpecialChars() behaviour
  back to escaping " since the normal serialization routines do not
  use it anymore, should close bug #134477 . Tried to make
  the writer avoid it too but it didn't work.
Daniel
2004-05-17 03:17:26 +00:00
Daniel Veillard
18ab8721ff fixed an XML entites content serialization potentially triggered by
* entities.c: fixed an XML entites content serialization
  potentially triggered by XInclude, see #126817
Daniel
2003-12-09 22:51:37 +00:00
Daniel Veillard
d45325589d fixed #127877, never output " in element content this changes the
* entities.c: fixed #127877, never output " in element content
* result/isolat3 result/slashdot16.xml result/noent/isolat3
  result/noent/slashdot16.xml result/valid/REC-xml-19980210.xml
  result/valid/index.xml result/valid/xlink.xml: this changes the
  output of a few tests
Daniel
2003-11-25 18:29:55 +00:00
William M. Brack
9e66059f08 fixed problem reported on the mailing list by Melvyn Sopacua - wrong
* entities.c, valid.c: fixed problem reported on the mailing
  list by Melvyn Sopacua - wrong argument order on functions
  called through xmlHashScan.
2003-10-20 14:56:06 +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
Daniel Veillard
b2517d850d Fix error on output of high codepoint charref like  , reported
* entities.c: Fix error on output of high codepoint charref like
   , reported by Eric Hanchrow
Daniel
2003-10-01 19:13:56 +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
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
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
899e64aa2f minor change to avoid compilation warnings on some (e.g. AIX) systems
* HTMLparser.c, entities.c, xmlreader.c: minor change to
  avoid compilation warnings on some (e.g. AIX) systems
2003-09-26 18:03:42 +00:00
Daniel Veillard
34ba387936 removed some warnings by casting xmlChar to unsigned int and a couple of
* DOCBparser.c HTMLparser.c entities.c parser.c relaxng.c
  xmlschemas.c xpath.c: removed some warnings by casting xmlChar
  to unsigned int and a couple of others.
* xmlschemastypes.c: fixes a segfault on empty hexBinary strings
Daniel
2003-07-15 13:34:05 +00:00
Daniel Veillard
8265a18a6a do not generate " for " outside of attributes this changes the output
* entities.c: do not generate " for " outside of attributes
* result//*: this changes the output of some tests
Daniel
2003-06-13 10:05:56 +00:00
Daniel Veillard
19ab45b5a5 fixes again one of the problem raised by James Clark in #106788 Daniel
* entities.c: fixes again one of the problem raised by
  James Clark in #106788
Daniel
2003-02-26 15:49:03 +00:00
Daniel Veillard
0046c0fec2 another fix for nodeinfo in entities problem fixed bug #106788 from James
* parser.c: another fix for nodeinfo in entities problem
* tree.c entities.c: fixed bug #106788 from James Clark
  some spaces need to be serialized as character references.
Daniel
2003-02-23 13:52:30 +00:00
Daniel Veillard
2d84a89478 Fixed a really nasty problem raised by a DocBook XSLT transform provided
* entities.c parser.c tree.c include/libxml/entities.h: Fixed
  a really nasty problem raised by a DocBook XSLT transform
  provided by Sebastian Bergmann
Daniel
2002-12-30 00:01:08 +00:00
Daniel Veillard
3487c8d9bb get rid of all the perror() calls made in the library execution paths.
* DOCBparser.c HTMLparser.c c14n.c entities.c list.c
  parser.c parserInternals.c xmlIO.c: get rid of all the
  perror() calls made in the library execution paths. This
  should fix both #92059 and #92385
Daniel
2002-09-05 11:33:25 +00:00
Daniel Veillard
34ce8bece2 preparing 2.4.18 updated and rebuilt the web site implement the new
* configure.in: preparing 2.4.18
* doc/*: updated and rebuilt the web site
* *.c libxml.h: implement the new IN_LIBXML scheme discussed with
  the Windows and Cygwin maintainers.
* parser.c: humm, changed the way the SAX parser work when
  xmlSubstituteEntitiesDefault(1) is set, it will then
  do the entity registration and loading by itself in case the
  user provided SAX getEntity() returns NULL.
* testSAX.c: added --noent to test the behaviour.
Daniel
2002-03-18 19:37:11 +00:00
Daniel Veillard
2875770e53 fixed a couple of conformances issues deep into the validation code
* SAX.c entities.c: fixed a couple of conformances issues deep
  into the validation code (standalone and undeclared Notations)
Daniel
2002-02-18 11:19:30 +00:00
Daniel Veillard
8ee9c8f6c4 applied patch from Anthony Jones to implement copy of DTD subtree too. Had
* entities.c tree.c include/libxml/entities.h: applied patch
  from Anthony Jones to implement copy of DTD subtree too. Had
  just to keep 2 function private which really ought to become
  public ones.
Daniel
2002-01-26 21:42:58 +00:00
Daniel Veillard
3606581dcd another set of patches from Anthony Jones for copy operations cleanup and
* valid.c tree.c entities.c: another set of patches from
  Anthony Jones for copy operations cleanup and robustness
Daniel
2002-01-24 15:02:46 +00:00
Daniel Veillard
845cce4cf1 Anthony Jones pointed a bug in xmlCopyEntity() Daniel
* entities.c: Anthony Jones pointed a bug in xmlCopyEntity()
Daniel
2002-01-09 11:51:37 +00:00
Daniel Veillard
cbaf399537 applied 42 documentation patches from Charlie Bozeman. Regenerated the
* *.c include/libxml/*.h doc/html/*: applied 42 documentation
  patches from Charlie Bozeman. Regenerated the HTML docs.
Daniel
2001-12-31 16:16:02 +00:00
Daniel Veillard
3c01b1d81b - include/libxml/globals.h include/libxml/threads.h threads.c
testThreads.c: far more testing, cleaning up bugs
- *.c : make sure globals.h is always included.
Daniel
2001-10-17 15:58:35 +00:00
Daniel Veillard
b44025c72b started integrating the non-controversial parts of Gary Pennington
* HTMLtree.c catalog.c debugXML.c entities.c nanoftp.c
  parser.c valid.c xmlmemory.c xpath.c xpointer.c: started
  integrating the non-controversial parts of Gary Pennington
  multithread patches
* catalog.c: corrected a small bug introduced
Daniel
2001-10-11 22:55:55 +00:00
Daniel Veillard
166982816e do not output hexadecimal charrefs when serializing HTML since some
* encoding.c entities.c: do not output hexadecimal charrefs
  when serializing HTML since some version of Netscape can't
  grok it, generate decimal ones.
* result/HTML/doc3.htm: output changed due to previous test
* parserInternals.c: repair xmlKeepBlanksDefault() broken in 2.4.4
Daniel
2001-09-14 10:29:27 +00:00
Daniel Veillard
05c13a20b9 John Fleck fixed typos in the options output fix ignorable white space SAX
* xmllint.c: John Fleck fixed typos in the options output
* parser.c SAX.c: fix ignorable white space SAX selection
* entities.c: Steve Underwood found the possibility of an
  ininite loop in case of error.
Daniel
2001-09-09 08:38:09 +00:00
Daniel Veillard
220907319a cleanup of global variables, marking some const or private. Daniel
* include/libxml/parserInternals.h include/libxml/HTMLparser.h
  xmlIO.c tree.c parserInternals.c entities.c encoding.c
  HTMLparser.c: cleanup of global variables, marking some
  const or private.
Daniel
2001-07-16 00:06:07 +00:00
Daniel Veillard
62f313ba0c - SAX.c entities.c parser.c: changed completely the way entities
are handled when running the parser in entity substitution mode.
  This fixes a bug reported by Stephan Kulow and nearly divides
  by 3 the amount of memory required by libxslt to load and process
  DocBook TDG.
Daniel
2001-07-04 19:49:14 +00:00
Daniel Veillard
c5d64345cf Summer's cleanup, a really big one:
* AUTHORS: added William and Bjorn
* include/libxml/*.h *.c README doc/*.html etc.: changed old email to
  daniel@veillard.com hopefully I won't have to do this again
* doc/Makefile.am doc/html/*.html: cleanup makefile, checked that
  docs can be rebuilt cleanly now
* include/libxml/xml*version.h*: removed include/libxml/xmlversion.h
  from CVs it's generated, added include/libxml/xmlwin32version.h
  also generated but which should change far less frequently.
* catalog.c nanoftp.c: made sure to include libxml.h not
  libxml/xmlversion.h directly
* include/libxml/*.h: include xmlwin32version.h instead of xmlversion.h
  when compiling on WIN32 and MSC
Daniel
2001-06-24 12:13:24 +00:00
Daniel Veillard
d79bcd1b36 attempt to work around what seemed a gcc optimizer bug when handling
* xpath.c: attempt to work around what seemed a gcc optimizer
  bug when handling floats on i386 http://veillard.com/gcc.bug
* tree.c entities.c encoding.c: doing some cleanups while
  chasing it
Daniel
2001-06-21 22:07:42 +00:00
Daniel Veillard
122376b8ef Staring to receive bug reports on 2.3.7:
- entities.c: xmlEncodeEntitiesReentrant fixed a few accesses
  to doc where it wasn't checked against NULL reported by
  Jens Laas
Daniel
2001-04-24 12:12:30 +00:00
Bjorn Reese
70a9da54eb trio upgrade and integration 2001-04-21 16:57:29 +00:00
Daniel Veillard
92ad210417 Spring cleanup ...: - configure.in Makefile.am config.h.in
Spring cleanup ...:
- configure.in Makefile.am config.h.in xmlversion.h.in: detect if
  we need string functions
- trio.[ch] strio.[ch]: embedded the Trio-0.23 string functions
  to be able to use them where needed. Applied some changes
  to reduce name linking pollution and compile in only what's
  needed.
- HTMLtree.c debugXML.c entities.c error.c nanoftp.c valid.c
  xlink.c xmlversion.h.in xpath.c: got rid of the #ifdef
  for the string manipulation functions
- xmlmemory.[ch]: removed DEBUG_MEMORY_FREED and added it automatically
  to the free() function of xmlmemory.c
- entities.c HTMLtree.c parserInternals.c tree.c uri.c valid.c
  xinclude.c xmlIO.c xpath.c xpointer.c: removed the MEM_CLEANUP
  usage.
Daniel
2001-03-27 12:47:33 +00:00
Daniel Veillard
56a4cb8c4d Huge cleanup, I switched to compile with
-Wall -g -O -ansi -pedantic -W -Wunused -Wimplicit
-Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat
-Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow
-Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return
-Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline
- HTMLparser.[ch] HTMLtree.c SAX.c debugXML.c encoding.[ch]
  encoding.h entities.c error.c list.[ch] nanoftp.c
  nanohttp.c parser.[ch] parserInternals.[ch] testHTML.c
  testSAX.c testURI.c testXPath.c tree.[ch] uri.c
  valid.[ch] xinclude.c xmlIO.[ch] xmllint.c xmlmemory.c
  xpath.c xpathInternals.h xpointer.[ch] example/gjobread.c:
  Cleanup, staticfied a number of non-exported functions,
  detected and cleaned up a dozen of problem found this way,
  avoided a lot of public function name/typedef/system names clashes
- doc/xml.html: updated
- configure.in: switched private flags to the really pedantic ones.
Daniel
2001-03-24 17:00:36 +00:00
Daniel Veillard
48b2f8968e Okay time to improve performances, gprof session:
before  real 0m2.483s (2.3.2 release yesterday)
current real 0m1.763s
when parsing (with tree build/freeing) db10000.xml from XSLTMark:
- xmlmemory.h HTMLparser.c HTMLtree.c entities.c parser.c
  xpath.c xpointer.c tree.c uri.c valid.c xinclude.c xmlIO.c:
  avoiding memcpy in production builds MEM_CLEANUP macro use
- parser.[ch] parserInternals.c: optimizations of the tightest
  internal loops inside the parser. Better checking of I/O
  flushing/loading conditions
- xmllint.c : added --timing
Daniel
2001-02-25 16:11:03 +00:00
Owen Taylor
3473f88a7a Revert directory structure changes 2001-02-23 17:55:21 +00:00