| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
We don't have test cases with many documents, so set the initial table
size to 1 when fuzzing, so there is a chance to detect reallocation
issues.
|
|
|
|
| |
See #344.
|
|
|
|
| |
xmlXIncludeRecurseDoc can realloc the cache.
|
|
|
|
| |
Fixes #540.
|
|
|
|
|
|
| |
Fix parsing of larger documents without XML_PARSE_HUGE.
Should fix #538.
|
|
|
|
| |
The behavior shouldn't depend on mostly random configuration options.
|
|
|
|
| |
Switch remaining users to snprintf.
|
|
|
|
|
|
|
| |
Move static function declaration into XPATH block. Also move comparison
functions.
Fixes #537.
|
|
|
|
|
|
|
|
|
| |
Follow-up to commit d0c3f01e. A parser context will be initialized to
SAX version 2, but this can be overridden with XML_PARSE_SAX1 later,
so we must initialize the SAX1 element handlers as well.
Change the check in xmlDetectSAX2 to only look for XML_SAX2_MAGIC, so
we don't switch to SAX1 if the SAX2 element handlers are NULL.
|
|
|
|
|
|
| |
and pass cflags when building executables
See 0f77167f for prior related work
|
|
|
|
|
|
|
|
|
|
| |
For some reason, xmlCtxtUseOptionsInternal set the start and end element
SAX handlers to the internal DOM builder functions when XML_PARSE_SAX1
was specified. This means that custom SAX handlers could never work with
that flag because these functions would receive the wrong user data
argument and crash immediately.
Fixes #535.
|
|
|
|
|
|
|
|
|
|
| |
Call xmlInitParser in xmlHashCreate to make it work if the library
wasn't initialized yet.
Otherwise, exsltRegisterAll from libxslt 1.1.24 or older might cause
a crash.
See #534.
|
|
|
|
| |
Short-lived regression found by OSS-Fuzz.
|
|
|
|
| |
-Wcast-function-type is only available since GCC 8.
|
|
|
|
|
| |
Fix another issue when running with older libc, threads and libpthread
not linked in.
|
|
|
|
|
|
| |
This fixes quadratic behavior with large dictionaries.
Also rework testdict.c to support tests with larger dictionaries.
|
|
|
|
|
|
| |
Fixes broken build after 21cec82b.
Fixes #532.
|
|
|
|
|
|
| |
The `ret = 0` line should have been deleted.
Fixes #531.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Swap arguments in initial call to xmlFARecurseDeterminism.
Fix the check whether we revisit the initial state in
xmlFARecurseDeterminism.
If there are transitions with equal atoms and targets but different
counters, treat the regex as deterministic but mark the transitions as
non-deterministic internally.
Don't overwrite zero return value of xmlFAComputesDeterminism
with non-zero value from xmlFARecurseDeterminism.
Most of these errors lead to non-deterministic regexes not being
detected which typically isn't an issue. The improved code may break
users who relied on buggy behavior or cause other bugs to become
visible.
Fixes #469.
|
|
|
|
|
| |
'to' can be set to -1 or -2 when eliminating transitions, so check for
all negative values.
|
| |
|
|
|
|
|
|
|
|
| |
The visited flag must only be reset after the first call to
xmlFAReduceEpsilonTransitions has finished. Visiting states multiple
times could lead to unnecessary processing of duplicate transitions.
Similar to 68eadabd.
|
| |
|
|
|
|
| |
Make sure that filename appears in error messages.
|
| |
|
|
|
|
|
|
| |
Regressed in 9a82b94a.
Fixes #530.
|
|
|
|
|
| |
This makes sure that memory and streaming tests will report the same
messages.
|
| |
|
|
|
|
| |
This invokes the global error handler which should be avoided.
|
|
|
|
|
| |
The xmlIOErr functions use the global error handler and should be
avoided if possible.
|
|
|
|
|
|
| |
Make sure that xmlCharEncInput, xmlParserInputBufferPush and
xmlParserInputBufferGrow set the correct error code in the
xmlParserInputBuffer. Handle errors when calling these functions.
|
| |
|
|
|
|
|
|
|
| |
Use an enum instead of magic numbers. Fix a few error codes. Simplify
handling of "space" and "partial" errors.
See #506.
|
| |
|
| |
|
|
|
|
|
|
| |
This was used to check for memory leaks but could potentially create a
.memdump file. These days, there are better ways to check for memory
leaks.
|
|
|
|
|
|
|
| |
xmlCleanupParser is dangerous and shouldn't be called in most cases.
Being part of the examples led many people to use it incorrectly.
xmlMemoryDump is an obsolete way to test for memory leaks.
|
|
|
|
| |
See #527.
|
|
|
|
|
|
|
| |
va_copy is defined by the standard as a macro, so check_function_exists
will not detect it; check_symbol_exists will.
Fixes #528.
|
|
|
|
| |
Fixes #529.
|
| |
|
| |
|
|
|
|
| |
Should fix #527.
|
|
|
|
|
|
|
| |
lld 16 defaults to --no-undefined-version but the version script can
contain symbols disabled by configuration options.
See #473.
|
|
|
|
|
|
|
|
|
| |
Removing version information caused problems when relinking with shared
libraries depending on libxml2. It also broke the ABI on Android.
Revert libxml2.syms to the 2.10.0 version.
Fixes #526.
|
|
|
|
| |
Remove stuff which probably shouldn't be ignored.
|
| |
|
| |
|
| |
|
| |
|