1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-03-11 12:58:16 +03:00

103 Commits

Author SHA1 Message Date
Daniel Veillard
4f82c8a161 fixed a determinism detection problem exposed by ##other tests commited by
* xmlregexp.c: fixed a determinism detection problem exposed by
  ##other tests commited by Kasimier, also added a small speedup
  of determinism detection.
* test/results/any6_2_0* any8_1_0* any7_1_2* any7_2_2*: added
  the results to the regression tests now
Daniel
2005-08-09 21:40:08 +00:00
Daniel Veillard
6e65e15777 trying to nail down the remaining ##other issues completed the tests and
* xmlregexp.c xmlschemas.c: trying to nail down the remaining
  ##other issues
* result/schemas/any7* test/schemas/any7: completed the tests
  and added the results
* result/schemas/any3_0_0.err result/schemas/any5_0_0.err
  result/schemas/any5_1_0.err: this slightly chnages the output
  from 3 existing tests
Daniel
2005-08-09 11:09:52 +00:00
Daniel Veillard
10752284e3 fixed bug #310264, basically it's about reentrancy of count based
* xmlregexp.c: fixed bug #310264, basically it's about reentrancy
  of count based transition, when going though the counter must
  be reset to 0
* test/schemas/bug310264* result/schemas/bug310264*: added the
  regression test.
Daniel
2005-08-08 13:05:13 +00:00
Daniel Veillard
db68b74dc7 allows an extra argument to subset the tests big speedup for validation,
* runtest.c: allows an extra argument to subset the tests
* xmlregexp.c: big speedup for validation, basically avoided
  transition creation explosion when removing epsilon transition
Daniel
2005-07-30 13:18:24 +00:00
Daniel Veillard
77005e6ff0 fixed the error reporting for not transitions fixed output Daniel
* xmlregexp.c xmlschemas.c: fixed the error reporting for
  not transitions
* result/schemas/any5_0_0* result/schemas/any5_0_2*
  result/schemas/any5_1_0*: fixed output
Daniel
2005-07-19 16:26:18 +00:00
Daniel Veillard
9efc476bb6 fixing bug #172215 about foreign namespaces by adding support for negated
* xmlregexp.c xmlschemas.c include/libxml/xmlautomata.h: fixing
  bug #172215 about foreign namespaces by adding support for
  negated string transitions. Error messages still need to be
  improved.
* test/schemas/any5* result/schemas/any5*: adding regression
  tests for this.
Daniel
2005-07-19 14:33:55 +00:00
Daniel Veillard
99c394d9c5 fixed where xmlMemoryDump() should be called. fixed handling of {0}, \n,
* testRegexp.c: fixed where xmlMemoryDump() should be called.
* xmlregexp.c: fixed handling of {0}, \n, \r and \t, two bugs
  affecting NIST regression tests
Daniel
2005-07-14 12:58:49 +00:00
Daniel Veillard
de0e498b42 expanded test found and fixed the leak exposed by Microsoft regtests
* runsuite.c: expanded test
* xmlregexp.c: found and fixed the leak exposed by Microsoft regtests
Daniel
2005-07-03 14:35:44 +00:00
Kasimier T. Buchcik
c0e833f002 Removed 5 unnecessary dereferences (reported by Andriy, bug #301074).
* xmlschemas.c xmlregexp.c: Removed 5 unnecessary
  dereferences (reported by Andriy, bug #301074).
2005-04-19 15:02:20 +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
cee2b3a5f1 warning patches from Peter Breitenlohner serious DTD parsing speedups,
* testdso.c xmlregexp.c: warning patches from Peter Breitenlohner
* include/libxml/valid.h valid.c parser.c: serious DTD parsing
  speedups, start to deprecate 3 ElementDef related entry point
  and replace them with better ones.
Daniel
2005-01-25 00:22:52 +00:00
Daniel Veillard
cc026dc6b0 extended xmlRegExecErrInfo() and xmlRegExecNextValues() to return error
* include/libxml/xmlregexp.h xmlregexp.c: extended xmlRegExecErrInfo()
  and xmlRegExecNextValues() to return error transition strings too,
  and sink state detection and handling.
Daniel
2005-01-12 13:21:17 +00:00
Daniel Veillard
fc0b6f6ada William noticed I forgot to add special support for xmlmodules.c define
* gentest.py testapi.c: William noticed I forgot to add special
  support for xmlmodules.c define
* xmlregexp.c include/libxml/xmlregexp.h: added terminal to
  xmlRegExecErrInfo() API, adding new xmlRegExecNextValues()
  entry point and refactored to use both code.
Daniel
2005-01-09 17:48:02 +00:00
Daniel Veillard
9070015b40 fixing behaviour for xmlRegExecErrInfo in case of rollback Daniel
* xmlregexp.c: fixing behaviour for xmlRegExecErrInfo in case of
  rollback
Daniel
2005-01-08 22:05:09 +00:00
Daniel Veillard
7bd8b4b817 small update trying to add an API to get useful error informations back
* TODO: small update
* xmlregexp.c: trying to add an API to get useful error informations
  back from a failing regexp context.
Daniel
2005-01-07 13:56:19 +00:00
Daniel Veillard
a82b182655 more coverage more fixes Daniel
* gentest.py testapi.c: more coverage
* debugXML.c parser.c xmlregexp.c xpath.c: more fixes
Daniel
2004-11-08 16:24:57 +00:00
Kasimier T. Buchcik
87876407ce Parsing of <complexContent> - handle attribute 'mixed', catch illegal
* xmlschemas.c include/libxml/xmlerror.h include/libxml/xmlschemas.h
  include/libxml/schemasInternals.h: Parsing of <complexContent>
  - handle attribute 'mixed', catch illegal attributes.
  Parsing of <complexType> - handle attributes 'abstract',
  'final' and 'block', catch illegal attributes.
  Validation of complex types - handle abstract types.
  Added handling of default/fixed attributes and element values.
  Per validation option attribute nodes/text nodes are created
  on the instance.
  Added the corresponding constraints for fixed/default.
  Added xmlSchemaSetValidOptions, xmlSchemaGetValidOptions
  to the external API.
  Extended element declaration constraints.
  Got rid of perseverative creation of temporery validation/parser
  contexts.
  Added handling of xsi:schemaLocation and
  xsi:noNamespaceSchemaLocation.
  Fixed xsi:type component resolution if using non-prefixed
  QNames.
* xmlregexp.c xmlschemas.c include/libxml/xmlautomata.h:
  Enabled namespace awareness of the content model if using the
  model group "all".
* test/schemas/bug152470_1.xsd: Removed an "abstract" attribute,
  which broke the test.
* xstc/xstc.py:  Workaround to accomodate case insensitive
  test definitions in ms-test.def.xml (was missing in a previous
  commit).
2004-09-29 13:29:03 +00:00
Daniel Veillard
c7e3cc49ba another patch from Malcolm Tredinnick fixing warning generated by the
* acconfig.h config.h.in configure.in xmlIO.c xmlregexp.c xmlschemas.c
  xmlschemastypes.c: another patch from Malcolm Tredinnick fixing
  warning generated by the Nonstop Kernel Open System Services
  compiler #151710
Daniel
2004-09-28 12:33:52 +00:00
Daniel Veillard
c0826a7709 applied Schemas patches from Kasimier Buchcik lot of new tests for things
* configure.in xmlregexp.c xmlschemas.c xmlschemastypes.c
  include/libxml/schemasInternals.h include/libxml/xmlerror.h
  include/libxml/xmlschemastypes.h: applied Schemas patches
  from Kasimier Buchcik
* test/ result/ bug141333* annot-err* any[1-4]* bug145246*
  element-err* element-minmax-err* include1* restrict-CT-attr-ref*:
  lot of new tests for things fixed by the patch
Daniel
2004-08-10 14:17:33 +00:00
William M. Brack
f9b5fa2dec enhanced xmlRegStateAddTrans to check if transition is already present
* xmlregexp.c: enhanced xmlRegStateAddTrans to check if transition
  is already present and, if so, to ignore the request to add it.
  This has a very dramatic effect on memory requirements as well
  as efficiency.  It also fixes bug 141762.
2004-05-10 07:52:15 +00:00
William M. Brack
ddf71d61c9 enhanced the handling of subexpression ranges which have a minOccurs of 0
* xmlregexp.c: enhanced the handling of subexpression ranges
  which have a minOccurs of 0 (bug 140478 again); cleaned up
  comments throughout the module.
2004-05-06 04:17:26 +00:00
William M. Brack
0e00b28db6 enhanced xmlFARegExec range evaluation for min occurs 0 problems - fixes
* xmlregexp.c: enhanced xmlFARegExec range evaluation for min
  occurs 0 problems - fixes bug 140478.
2004-04-26 15:40:47 +00:00
Daniel Veillard
2cbf596c7f patched a bug in parsing production 1 and 2 of xmlschemas regexp that
* xmlregexp.c: patched a bug in parsing production 1 and 2 of
  xmlschemas regexp that William pointed out while working on
  #134120
* test/regexp/branch result/regexp/branch: added a specific
  regression test
Daniel
2004-03-31 15:50:43 +00:00
William M. Brack
10f1ef4ce8 enhanced the logic of parsing char groups to better handle initial or
* xmlregexp.c: enhanced the logic of parsing char groups to
  better handle initial or ending '-' (bug 135972)
2004-03-20 14:51:25 +00:00
Daniel Veillard
0ddb21c46c fixing bug #132930 with the provided patch, a bit suspicious about it but
* xmlregexp.c: fixing bug #132930 with the provided patch, a bit
  suspicious about it but this is fairly contained and regression
  tests still passes.
* test/schemas/all1* result/schemas/all1*: added the test to
  the regression suite.
Daniel
2004-02-12 12:43:49 +00:00
William M. Brack
dc99df936c fixed xmlFAParseCharRange for Unicode ranges with patch from Charles
* xmlregexp.c: fixed xmlFAParseCharRange for Unicode ranges
  with patch from Charles Bozeman.
2003-12-27 01:54:25 +00:00
William M. Brack
9887395b55 fixed problem causing segfault on validation error condition (reported on
* xmlregexp.c: fixed problem causing segfault on validation error
  condition (reported on mailing list)
2003-12-26 06:03:14 +00:00
Daniel Veillard
ebe48c60cc fix bug #128401 affecting regexp quantifiers Daniel
* config.h.in configure.in xmlregexp.c: fix bug #128401 affecting
  regexp quantifiers
Daniel
2003-12-03 12:12:27 +00:00
Daniel Veillard
f8b9de3254 fixing some Negative Character Group and Character Class Subtraction
* xmlregexp.c: fixing some Negative Character Group and
  Character Class Subtraction handling.
Daniel
2003-11-24 14:27:26 +00:00
Daniel Veillard
f2a1283564 more XML Schemas fixes based on Eric van der Vlist examples added
* xmlregexp.c xmlschemas.c: more XML Schemas fixes based
  on Eric van der Vlist examples
* result/schemas/vdv-first4* test/schemas/vdv-first4*:
  added regression tests
* doc/examples/Makefile.am doc/examples/index.py: do not
  regenerate the index on make all target, but only on
  make rebuild to avoid troubles.
Daniel
2003-11-24 13:04:35 +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
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
ff46a0443e error handling cleanup of the Regexp module. Daniel
* xmlregexp.c include/libxml/xmlerror.h: error handling
  cleanup of the Regexp module.
Daniel
2003-10-08 08:53:17 +00:00
William M. Brack
779af00750 =Bug 118559 (continued) 2003-08-01 15:55:39 +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
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
ef8dd7be29 fixing bug #108976 get the ID/REFs to reference the ID in the document
* parser.c: fixing bug #108976 get the ID/REFs to reference
  the ID in the document content and not in the entity copy
* SAX.c include/libxml/parser.h: more checking of the ID/REF
  stuff, better solution for #107208
* xmlregexp.c: removed a direct printf, dohhh
* xmlreader.c: fixed a bug on streaming validation of empty
  elements in entities
* result/VC/ElementValid8 test/VCM/v20.xml result/valid/xhtml1.xhtml:
  cleanup of the validation tests
* test/valid/id* test/valid/dtds/destfoo.ent result/valid/id*:
  added more ID/IDREF tests to the suite
Daniel
2003-03-23 12:02:56 +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
a9b66d00b5 new API building Python script, does the C parsing directly, generates a
* doc/apibuild.py doc/libxml2-api.xml doc/Makefile.am: new API
  building Python script, does the C parsing directly, generates
  a better API description including structure fieds defs and
  enums. Still a couple of bugs, but good enough for the python
  wrappers now.
* DOCBparser.c SAX.c nanohttp.c parser.c parserInternals.c tree.c
  valid.c xmlIO.c xmlmemory.c xmlreader.c xmlregexp.c xmlschemas.c
  include/libxml/schemasInternals.h include/libxml/tree.h: more
  cleanup based on the python analysis script reports.
* libxml.spec.in: make sure the API XML description is part of the
  devel package.
Daniel
2002-12-11 14:23:49 +00:00
Daniel Veillard
01c13b5be2 code cleanup, especially the function comments. fixed a small bug when
* DOCBparser.c HTMLparser.c c14n.c debugXML.c encoding.c hash.c
  nanoftp.c nanohttp.c parser.c parserInternals.c testC14N.c
  testDocbook.c threads.c tree.c valid.c xmlIO.c xmllint.c xmlmemory.c
  xmlreader.c xmlregexp.c xmlschemas.c xmlschemastypes.c xpath.c:
  code cleanup, especially the function comments.
* tree.c: fixed a small bug when freeing nodes which are XInclude ones.
Daniel
2002-12-10 15:19:08 +00:00
Daniel Veillard
3237023d6a fixed the validation of sequences content model when some of the blocks
* xmlregexp.c xmlschemas.c: fixed the validation of sequences
  content model when some of the blocks have min or max, and a couple
  of bugs found in the process.
* result/schemas/list0* test/schemas/list0*: added some specific
  regression tests
Daniel
2002-10-16 14:08:14 +00:00
Daniel Veillard
bd9afb5290 improving some documentation comments found and fixed a mem leak with
* tree.c: improving some documentation comments
* xmlregexp.c: found and fixed a mem leak with python regression tests
* doc/*: rebuilt the doc and the API XML file including the
  xmlregexp.h xmlautomata.h and xmlunicode.h headers
* python/generator.py python/libxml2class.txt python/libxml_wrap.h
  python/types.c: added access to the XML Schemas regexps from
  python
* python/tests/Makefile.am python/tests/regexp.py: added a
  simple regexp bindings test
Daniel
2002-09-25 22:25:35 +00:00
Daniel Veillard
118aed78f3 fixed the data callback on transition functionality which was broken when
* xmlregexp.c: fixed the data callback on transition functionality
  which was broken when using the compact form
* result/schemas/*: updated the results, less verbose, all tests
  pass like before
* DOCBparser.c testAutomata.c testC14N.c testSchemas.c testThreads.c
  testXPath.c valid.c xinclude.c xmllint.c xmlregexp.c xmlschemas.c
  xmlschemastypes.c xpath.c python/libxml.c: removed a bunch of
  annoying warnings
* xpath.c: try to provide better error report when possible
Daniel
2002-09-24 14:13:13 +00:00
Daniel Veillard
23e73571f8 made configuring with regexps/automata/unicode the default but without
* Makefile.am configure.in include/libxml/xmlversion.h.in:
  made configuring with regexps/automata/unicode the default
  but without schemas ATM
* testRegexp.c valid.c xmlregexp.c include/libxml/xmlregexp.h:
  fixed the regexp based DTD validation performance and memory
  problem by switching to a compact form for determinist regexps
  and detecting the determinism property in the process. Seems
  as fast as the old DTD validation specific engine :-) despite
  the regexp built and compaction process.
Daniel
2002-09-19 19:56:43 +00:00
Daniel Veillard
a646cfdb14 small cleanup switched DTD validation to use only regexp when configured
* HTMLparser.c: small cleanup
* valid.c xmlregexp.c: switched DTD validation to use only regexp
  when configured with them. A bit of debugging around the determinism
  checks is still needed
Daniel
2002-09-17 21:50:03 +00:00
Daniel Veillard
4402ab420f fixed a bug reported by Jeff Goff, the determinism was tested before
* xmlregexp.c xmlschemas.c: fixed a bug reported by Jeff Goff,
  the determinism was tested before eliminating the epsilon
  transitions :-(
Daniel
2002-09-12 16:02:56 +00:00
Daniel Veillard
e19fc23b64 updated a bit made a comment more specific more work on the Schemas
* TODO: updated a bit
* parser.c: made a comment more specific
* xmlregexp.c xmlschemas.c xmlschemastypes.c: more work on the
  Schemas conformance.
* test/schemas result/schemas: updated the test list
Daniel
2002-04-22 16:01:24 +00:00
Daniel Veillard
441bc32e31 implementing xs:all with minOccurs = 0 added more tests covering xs:all
* xmlregexp.c xmlschemas.c include/libxml/xmlautomata.h:
  implementing xs:all with minOccurs = 0
* tes/schemas/* result/schemas/*: added more tests covering
  xs:all
Daniel
2002-04-20 17:38:48 +00:00
Daniel Veillard
8a001f62c1 first implementation of the all particle, this may need to be revisited
* xmlregexp.c: first implementation of the all particle, this
  may need to be revisited for case where not all transitions
  must be crossed.
Daniel
2002-04-20 07:24:11 +00:00