Commit Graph

62 Commits

Author SHA1 Message Date
Daniel Veillard
966a31e222 fixing some problems in URI unescaping and output buffer opening, this
* uri.c xmlIO.c: fixing some problems in URI unescaping
  and output buffer opening, this should fix #141864
Daniel
2004-05-09 02:58:44 +00:00
Daniel Veillard
0a19458027 fix for xmlUriEscape on "http://user@somewhere.com" from Mark Vadok.
* uri.c: fix for xmlUriEscape on "http://user@somewhere.com"
  from Mark Vadok.
Daniel
2004-04-01 20:09:22 +00:00
Daniel Veillard
608d0ac938 fixing an use of strcpy() where both strings overlap pointed out by
* uri.c: fixing an use of strcpy() where both strings overlap
  pointed out by valgrind.
Daniel
2003-08-14 22:44:25 +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
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
9231ff9250 applied a set of patches from Lorenzo Viali correcting URI parsing errors.
* uri.c: applied a set of patches from Lorenzo Viali correcting
  URI parsing errors.
Daniel
2003-03-23 22:00:51 +00:00
Daniel Veillard
42f12e99d1 after and exchange with James Clark it appeared I had bug in URI parsing
* test/xsdtest/xsdtest.xml uri.c: after and exchange with James
  Clark it appeared I had bug in URI parsing code ...
* relaxng.c include/libxml/relaxng.h: completely revamped error
  reporting to not loose message from optional parts.
* xmllint.c: added timing for RNG validation steps
* result/relaxng/*: updated the result, all error messages changed
Daniel
2003-03-07 18:32:59 +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
Igor Zlatkovic
ce07616c08 path handling bug introduced by my recent machinations fixed 2003-02-23 13:39:39 +00:00
Igor Zlatkovic
f2238e6e55 introduced xmlCanonicPath 2003-02-19 14:50:35 +00:00
Daniel Veillard
d2298791af more testing on the Relax-NG front, cleaning up the regression tests
* check-relaxng-test-suite.py relaxng.c: more testing on the
  Relax-NG front, cleaning up the regression tests failures
  current state and I forgot support for "mixed":
  found 373 test schemas: 280 success 93 failures
  found 529 test instances: 401 success 68 failures
* tree.c include/libxml/tree.h xmlschemastypes.c: finished and
  moved the Name, NCName and QName validation routine in tree.c
* uri.c: fixed handling of URI ending up with #, i.e. having
  an empty fragment ID.
* result/relaxng/*: updated the results
Daniel
2003-02-14 16:54:11 +00:00
Daniel Veillard
7b4b2f9d8f preparing 2.5.0 release only warn in pedantic mode about namespace name
* configure.in NEWS: preparing 2.5.0 release
* SAX.c: only warn in pedantic mode about namespace name
  brokeness
* globals.c: fix a doc generation problem
* uri.c: fix #101520
* doc/*: updated and rebuilt the doc for the release, includuding
  stylesheet update
* python/Makefile.am: fix a filename bug
Daniel
2003-01-06 13:11:20 +00:00
Daniel Veillard
ea7751d53b working on DTD validation on top of xml reader interfaces. Allows to
* testReader.c xmlreader.c valid.c include/libxml/tree.h
  include/libxml/valid.h include/libxml/xmlreader.h: working on
  DTD validation on top of xml reader interfaces. Allows to
  validate arbitrary large instances. This required some extensions
  to the valid module interface and augmenting the size of xmlID
  and xmlRef structs a bit.
* uri.c xmlregexp.c: simple cleanup.
Daniel
2002-12-20 00:16:24 +00:00
Daniel Veillard
fdd27d2718 Johann Richard pointed out some XPointer problems for URN based URI
* uri.c: Johann Richard pointed out some XPointer problems for
  URN based URI references in XInclude. Modified the URI parsing
  and saving routines to allow correct parsing and saving of
  XPointers, especially when attached to "opaque" scheme accordingly
  to RFC 2396
Daniel
2002-11-28 11:55:38 +00:00
Daniel Veillard
e645e8c141 Applied the VMS update patch from Craig A. Berry update Daniel
* vms/build_libxml.com vms/config.vms vms/readme.vms
  include/libxml/parser.h include/libxml/parserInternals.h
  include/libxml/tree.h include/libxml/xmlIO.h
  HTMLparser.c catalog.c debugXML.c parser.c parserInternals.c
  tree.c triodef.h trionan.c uri.c xmlIO.c xpath.c:
  Applied the VMS update patch from Craig A. Berry
* doc/*.html: update
Daniel
2002-10-22 17:35:37 +00:00
Aleksey Sanin
49cc97565f replaced sprintf() with snprintf() to prevent possible buffer overflow
* DOCBparser.c HTMLparser.c debugXML.c encoding.c
nanoftp.c nanohttp.c parser.c tree.c uri.c xmlIO.c
xmllint.c xpath.c: replaced sprintf() with snprintf()
to prevent possible buffer overflow (the bug was pointed
out by Anju Premachandran)
2002-06-14 17:07:10 +00:00
Daniel Veillard
234bc4e712 fixing bug #82848 Daniel
* uri.c: fixing bug #82848
Daniel
2002-05-24 11:03:05 +00:00
Daniel Veillard
eb475a37df fixing bug #78662 i.e. add proper escaping of URI when saving HTML files.
* HTMLtree.c uri.c: fixing bug #78662 i.e. add proper
  escaping of URI when saving HTML files.
* result/HTML/*: this impacted some tests
Daniel
2002-04-14 22:00:22 +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
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
220346d16b closed bug #66159 added --escape option some cleanup for xml2-config
* uri.c: closed bug #66159
* testURI.c: added --escape option
* configure.in: some cleanup for xml2-config --cflags
Daniel
2001-12-07 11:33:54 +00:00
Daniel Veillard
43d3f61ad5 preparing 2.4.10 upgraded and rebuilt the docs Daniel
* configure.in include/libxml/xmlwin32version.h: preparing 2.4.10
* doc/*: upgraded and rebuilt the docs
Daniel
2001-11-10 11:57:23 +00:00
Daniel Veillard
4def3bd94c second pass at fixing #63336, using Joel Young final patch. looks okay.
* uri.c: second pass at fixing #63336, using Joel Young
  final patch. looks okay.
Daniel
2001-10-30 09:47:47 +00:00
Daniel Veillard
bb6808ea16 trying to clear #63336 allowing the escaping routine to parse unconformant
* uri.c include/libxml/uri.h: trying to clear #63336
  allowing the escaping routine to parse unconformant
  URI-References.
Daniel
2001-10-29 23:59:27 +00:00
Daniel Veillard
d046356030 Applied the last patches from Gary, cleanup, activated threading all user
* include/libxml/SAX.h include/libxml/globals.h include/libxml/parser.h
  include/libxml/parserInternals.h include/libxml/tree.h
  include/libxml/xmlerror.h HTMLparser.c SAX.c error.c globals.c
  nanoftp.c nanohttp.c parser.c parserInternals.c testDocbook.c
  testHTML.c testSAX.c tree.c uri.c xlink.c xmlmemory.c:
  Applied the last patches from Gary, cleanup, activated threading
  all user accessible global variables are now handled in globals.[ch]
  Still a bit rought but make tests passes with either
  --with-threads defined at configure time or not.
* Makefile.am example/Makefile.am: added globals.[ch] and threads
  linking options
Daniel
2001-10-13 09:15:48 +00:00
Daniel Veillard
60087f30f3 preparing 2.4.6 release updated and rebuilt the docs fixed a number of
* configure.in: preparing 2.4.6 release
* doc/xml.html doc/html/*: updated and rebuilt the docs
* include/libxml/*.h *.c: fixed a number of teh/the widht/width typos
Daniel
2001-10-10 09:45:09 +00:00
Daniel Veillard
20ee8c0310 applied fix from Mathias Hasselmann about a bug in URI parsing. fix bug
* uri.c: applied fix from Mathias Hasselmann about a bug in URI
  parsing.
* xpath.c: fix bug #61291 the default XML namespace node is
  missing from the namespace axis.
* tree.c: refuse to create namespaces nodes with prefix "xml"
Daniel
2001-10-05 09:18:14 +00:00
Daniel Veillard
fcbd74a2d0 fixed 2 uri normalization bugs on '//' reduction Daniel
* uri.c: fixed 2 uri normalization bugs on '//' reduction
Daniel
2001-06-26 07:47:23 +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
f3afa7dd4e - nanoftp.c nanohttp.c uri.c include/win32config.h: Igor Zlatkovic
provided fixes to compile on MSCC again
- win32/libxml2/libxml2.def.src win32/libxml2/libxml2*.dsp: he
  also provided an update for the project files.
Daniel
2001-06-09 13:52:58 +00:00
Daniel Veillard
e95e2396f3 - DOCBparser.c: implemented the <?sgml-declaration encoding="xxx"?>
hack
- tree.[ch]: added xmlHasNsProp as suggested in bug report #55653
- uri.c: fixed a warning
Daniel
2001-06-06 10:46:28 +00:00
Daniel Veillard
6278fb5b30 - Makefile.am include/Makefile.am: small change to have
include/libxml rebuilt if working from CVS.
- uri.c: applied another patch from Carl Douglas for URI escaping,
  this should close bug #51876
Daniel
2001-05-25 07:38:41 +00:00
Daniel Veillard
8514c674b2 - uri.[ch]: applied a patch from Carl Douglas for URI escaping,
related to bug #51876
Daniel
2001-05-23 10:29:12 +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
146c9120ca - parser.c: fixed a reported bug in NOTATION parsing
- uri.c: accepted but not fixed bug 51876, added TODO
- Makefile.am: fixed bug 51876
Daniel
2001-03-22 15:22:27 +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
CET 2001 Tomasz K³oczko
64636e7f6e moved to libxml directory - this allow simplify automake/autoconf. Now
Thu Feb 23 02:03:56 CET 2001 Tomasz K³oczko <kloczek@pld.org.pl>

        * *.c *.h libxml files: moved to libxml directory - this allow
	  simplify automake/autoconf. Now isn't neccessary hack on
	  am/ac level for make and remove libxml symlink (modified for this
	  also configure.in and main Makefile.am). Now automake abilities
	  are used in best way (like in many other projects with libraries).
	* include/win32config.h: moved to libxml directory (now include
	  directory isn't neccessary).
	* Makefile.am, examples/Makefile.am, libxml/Makefile.am:
	  added empty DEFS and in INCLUDES rest only -I$(top_builddir) -
	  this allow minimize parameters count passed to libtool script
	  (now compilation is also slyghtly more quiet).
	* configure.in: simplifies libzdetestion - prepare separated
	  variables for keep libz name and path to libz header files isn't
	  realy neccessary (if someone have libz installed in non standard
	  prefix path to header files ald library can be passed as:
	  $ CFALGS="-I</libz.h/path>" LDFLAGS="-L</libz/path>" ./configure
	* autogen.sh: check now for libxml/entities.h.

	After above building libxml pass correctly and also pass
	"make install DESTDIR=</install/prefix>" from tar ball generated by
	"make dist". Seems ac/am reorganization is finished. This changes
	not touches any other things on *.{c,h} files level.
2001-02-23 01:37:32 +00:00
Daniel Veillard
b6e7fdbac6 Rewrite/cleanup/tests of URI normalization:
- uri.c: rewrite of xmlNormalizeURIPath from Paul D. Smith
- test/URI/smith.uri result/URI/smith.uri Makefile.am:
  added the new tests for URI normalization
- testURI.c: fixed stoopid bugs
- result/VC/OneID3 result/VC/UniqueElementTypeDeclaration:
  the URI in the error messages are now properly normalized
Daniel
2001-02-02 17:07:32 +00:00
Daniel Veillard
ea28ce621c - uri.c: applied Marc Sanfacon's patch for xmlNormalizeURIPath
Daniel
2001-02-02 08:20:19 +00:00
Daniel Veillard
9e8bfae59a XInclude and other stuff while travelling. Contributed patches:
- tree.[ch] xinclude.[ch] xmllint.c configure.in valid.c
  debugXML.c xmlversion.h.in: Started adding XInclude support,
  this is a new xmllint option
- tree.c xpath.c: applied TOM patches for XPath
- xpointer.c: fixed a couple of errors.
- uri.c: added an escaping function needed for xinclude
- testXPath.c hash.c HTMLtree.c: minor cleanups raised by
  new warning from RH70 gcc's version
Daniel
2000-11-06 16:43:11 +00:00
Daniel Veillard
bd20df7951 - uri.c: Wayne Davison's patch fixing xmlBuildURI()
- Makefile.mingw: Wayne Davison's update adding hash.c
Daniel
2000-10-29 17:53:40 +00:00
Daniel Veillard
d6d7f7bf96 patched to redirrect all "out of context" error messages to
a reconfigurable routine. The changes are:
* xmlerror.h : added the export of an error context type (void *)
  an error handler type xmlGenericErrorFunc there is an interface
  xmlSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler);
  to reset the error handling routine and its argument
  (by default it's equivalent to respectively fprintf and stderr.
* all the c files: all wild accesses to stderr or stdout within
  the library have been replaced to calls to the handler.
Daniel
2000-10-25 19:56:55 +00:00
Daniel Veillard
740abf5ae7 Big XPath cleanup continues, one URI fix:
- xpath.[ch] debugXML.c testXPath.c: fixed the XPath evaluation
  engine, should be far more stable, incorporated a new version of
  preceding/following axis, need testing
- uri.c: fixed file:///c:/a/b/c problem
- test/XPath/tests/idsimple: augmented the XPath tests
Daniel
2000-10-02 23:04:54 +00:00
Daniel Veillard
f09e7e35de XPath fixes and cleanup, 2 general bug fixes:
- xpath.[ch] : fixed some serious XPath Predicate evaluation
  problems
- Makefile.am : added XPath regression tests to normal tests
- uri.c: fixed a problem with local paths, cleanup
- parser.c: fixed a problem with large CData sections
Daniel
2000-10-01 15:53:30 +00:00
Daniel Veillard
8ddb5a7aef Small bugfixes: - HTMLparser.c uri.c: Another patch from Wayne Davison,
Small bugfixes:
- HTMLparser.c uri.c: Another patch from Wayne Davison, correcting
  an URI bug and a fix for the control-character-induced infinite loop
- nanohttp.c: preventive fix for compiling on WIN32
Daniel
2000-09-23 10:28:52 +00:00
Daniel Veillard
4fb87ee585 Various contributed patches:
- uri.c: applied patch for URI escaping from Wayne Davison
  <wayned@blorf.net>
- tree.c parserInternals.c HTMLparser.c: memset checks patches
  from Denis Barbier <barbier@imacs.polytechnique.fr>
- HTMLparser.c: UTF8 characters in HTML tag-attribute values
  patch from Wayne Davison
Daniel
2000-09-19 12:25:59 +00:00
Daniel Veillard
b1059e2f88 Finally commiting work done on the plane, major cleanup,
spread some serious anti bitrot all over the place:
- parserInternals.c parserInternals.h parser.c Makefile.am:
  created a new module parserInternals.c, moved most of the
  code shared by the various parsers there, as well as
  deprecated  code from parser.c. More cleanup of parser.c
- uri.c: fixed a problem when URI is NULL
- valid.c: speedup when looking for an attribute declaration
Daniel
2000-09-16 14:02:43 +00:00