|
322e733b
|
2024-07-18T19:27:43
|
|
xinclude: Fix fallback for text includes
Fixes #772.
|
|
0dada804
|
2024-07-18T03:48:11
|
|
threads: Fix 32-bit Windows build
Should fix #771.
|
|
7b98e8d6
|
2024-07-18T01:54:22
|
|
io: Don't call getcwd in xmlParserGetDirectory
The "directory" value isn't used internally. Calling getcwd is
unnecessary and can cause problems in sandboxed environments.
Fixes #770.
|
|
15202100
|
2024-07-18T02:36:30
|
|
buf: Fix maxSize behavior
Short-lived regression.
|
|
2440cb5d
|
2024-07-18T02:10:32
|
|
buf: Fix xmlBufBackToBuffer
Short-lived regression.
|
|
5862e9dd
|
2024-07-18T01:59:25
|
|
Add NULL checks
Short-lived regression.
|
|
4e93425a
|
2024-07-16T20:02:13
|
|
threads: Prefer Win32 over pthreads
|
|
1f7d4af3
|
2024-07-16T18:59:19
|
|
globals: Clean up macros and add comments
|
|
4f08a1a2
|
2024-07-15T23:23:06
|
|
globals: Also use thread-specific storage on "main" thread
Don't treat "main" thread specially. This simplifies access to
thread-specific data.
xmlGetGlobalState can now also fail on the former main thread, leading
to an unrecoverable condition if malloc fails.
The globals were never defined in public header files when compiling
with thread support. Now they're only defined in a legacy build.
Move TlsFree to DllMain to make cleanup more robust on Windows.
Obsoletes #1.
|
|
79e11995
|
2024-07-15T19:43:28
|
|
error: Make xmlLastError const
|
|
0ab07b21
|
2024-07-11T20:04:39
|
|
io: Rework xmlOutputBufferWrite
Simplify code, handle short writes from callback.
|
|
eb66d03e
|
2024-07-07T23:15:54
|
|
io: Deprecate a few functions
|
|
97680d6c
|
2024-07-07T21:29:18
|
|
io: Rework xmlParserInputBufferGrow
Remove dubious (len != 4) check.
Remove compression-related code. This should already be set when
opening the input.
|
|
a6f54f05
|
2024-07-07T18:52:17
|
|
io: Fine-tune initial IO buffer size
|
|
769e5a4a
|
2024-07-16T01:12:21
|
|
threads: Allocate global RMutexes statically
Avoid memory allocations during initialization.
|
|
7148b778
|
2024-07-07T16:11:08
|
|
parser: Optimize memory buffer I/O
Reenable zero-copy IO for zero-terminated static memory buffers.
Don't stream zero-terminated dynamic memory buffers on top of creating
a copy.
|
|
34c9108f
|
2024-07-07T18:38:31
|
|
encoding: Add sizeOut argument to xmlCharEncInput
When push parsing, we want to convert as much of the input as possible.
When pull parsing memory buffers, we want to convert data chunk by chunk
to save memory.
|
|
5d36664f
|
2024-07-16T00:35:53
|
|
memory: Deprecate xmlGcMemSetup
|
|
8e871a31
|
2024-07-07T12:58:43
|
|
buf: Rework xmlBuffer code
Port most changes made to the xmlBuf code in f3807d76, except that
"size" still includes the terminating NULL byte.
Make xmlSetBufferAllocationScheme, xmlBufferAllocScheme and
xmlDefaultBufferSize no-ops.
Deprecate a few functions.
|
|
888f70c7
|
2024-07-07T11:35:54
|
|
buf: Move xmlBuffer code to buf.c
|
|
ff39f28b
|
2024-07-16T00:21:22
|
|
schematron: Use xmlMalloc
|
|
92f30711
|
2024-07-07T03:02:11
|
|
parser: Optimize buffer shrinking
Remove checks now that we can shrink memory buffers efficiently.
Shrink more aggressively.
|
|
a221cd78
|
2024-07-07T03:01:51
|
|
buf: Rework xmlBuf code
Always use what the old implementation called the "IO" allocation
scheme, allowing to move the content pointer past the initial
allocation. This is inexpensive and allows efficient shrinking.
Optimize xmlBufGrow, reusing shrunken memory as much as possible.
Simplify xmlBufAdd.
Make xmlBufBackToBuffer return an error on overflow.
Make "size" exclude the terminating NULL byte.
Always provide an initial size.
Reintroduce static buffers.
Remove xmlBufResize and several other functions.
|
|
a87944e9
|
2024-07-16T00:13:49
|
|
windows: Use DllMain for cleanup
|
|
2adcde39
|
2024-07-12T16:25:05
|
|
save: Optimize xmlSerializeText
Use lookup tables.
|
|
1b067082
|
2024-07-12T15:19:26
|
|
save: Always serialize CR as decimal " "
We used to serialize CR as "
" when there was no encoding and we
weren't in an attribute. This was somewhat inconsistent.
|
|
5f3f66c6
|
2024-07-15T23:50:08
|
|
threads: Use pthread_once and InitOnceExecuteOnce
Static initialization flags aren't thread-safe. Also avoids an
allocation on Windows.
TODO: Breaks xmllint on Windows.
|
|
1cfc5b80
|
2024-07-12T03:07:57
|
|
entities: Rework serialization of numeric character references
|
|
8d160626
|
2024-07-12T02:01:06
|
|
entities: Rework text escaping
|
|
be250b79
|
2024-07-15T20:04:08
|
|
xpath: Remove union swap optimization
This would require locking to make it thread-safe.
|
|
cc45f618
|
2024-07-11T22:06:31
|
|
save: Rework text escaping
Stop using xmlOutputBufferWriteEscape except when using deprecated
xmlSaveSetEscape. Rewrite xmlOutputBufferWriteEscape to use an extra
buffer and call xmlOutputBufferWrite.
Introduce xmlSerializeText to serialize both text and attribute content.
Don't read encoding from document when serializing and remove all hacks
that temporarily changed the document's encoding.
|
|
e488695b
|
2024-07-11T20:23:49
|
|
save: Deprecate xmlSaveSet*Escape
xmlSaveSetAttrEscape never had an effect.
|
|
bb1884cb
|
2024-07-16T10:19:23
|
|
Enable CMake checks for MSVC
|
|
e0494c0d
|
2024-07-15T15:10:18
|
|
io: Add some deprecation warnings
|
|
2dcd561d
|
2024-07-15T14:54:37
|
|
regexp: Don't print to stderr
|
|
4b1832c1
|
2024-07-15T14:46:00
|
|
relaxng: Use error handler for internal errors
Don't print to stderr.
|
|
72886980
|
2024-07-15T14:35:47
|
|
error: Add helper functions to print errors and abort
|
|
f6170b48
|
2024-07-15T14:19:34
|
|
memory: Don't report OOM to stderr
|
|
6be79014
|
2024-07-15T14:18:26
|
|
Remove unused code
|
|
fee0006a
|
2024-07-15T13:03:55
|
|
parser: Fix memory leak after malloc failure in xml*ParseDTD
|
|
69f12d6d
|
2024-07-13T00:17:18
|
|
encoding: Deprecate xmlByteConsumed
This was only used by Chromium/WebKit to detect whether xmlParseContent
really succeeded. It's a horrible, overcomplicated hack.
See 8c5848bd and #767.
|
|
440d11af
|
2024-07-13T00:11:35
|
|
reader: Deprecate xmlTextReaderByteConsumed
Document that this function is useless.
Stop trying to handle encoding via xmlByteConsumed which can be
expensive.
|
|
3528b81f
|
2024-07-12T16:28:18
|
|
tools: Move codegen tools to 'tools' directory
|
|
c3b2f471
|
2024-07-12T03:07:22
|
|
cmake: Update option description
|
|
30487932
|
2024-07-12T02:03:04
|
|
meson: Also disable icu and thread_alloc by default
|
|
aa6aec19
|
2024-07-11T12:37:25
|
|
parser: Fix xmlInputSetEncodingHandler again
Short-lived regression.
|
|
8af55c8d
|
2024-07-06T22:14:21
|
|
parser: Rename new input API functions
These weren't made public yet.
|
|
d74ca594
|
2024-07-06T22:04:06
|
|
parser: Rename internal xmlNewInput functions
|
|
4f329dc5
|
2024-07-10T03:27:47
|
|
parser: Implement xmlCtxtParseContent
This implements xmlCtxtParseContent, a better alternative to
xmlParseInNodeContext or xmlParseBalancedChunkMemory. It accepts a
parser context and a parser input, making it a lot more versatile.
xmlParseInNodeContext is now implemented in terms of
xmlCtxtParseContent. This makes sure that xmlParseInNodeContext never
modifies the target document, improving thread safety.
xmlParseInNodeContext is also more lenient now with regard to undeclared
entities.
Fixes #727.
|
|
673ca0ed
|
2024-07-11T01:23:57
|
|
tests: Regenerate testapi.c
|
|
4fec0889
|
2024-07-10T22:31:15
|
|
parser: Fix memory leak in xmlInputSetEncodingHandler
Short-lived regression.
|
|
d0997956
|
2024-07-10T22:26:19
|
|
encoding: Readd some UTF-8 validation to encoders
This isn't strictly needed but avoids generating invalid UTF-16 and
unsigned integer overflows.
|
|
ae6e2ee7
|
2024-07-10T22:11:08
|
|
fuzz: Adjust reader fuzzer
|
|
f48eefe3
|
2024-07-09T14:09:15
|
|
encoding: Rework xmlByteConsumed
Don't loop infinitely if input buffer is too large. Allocate conversion
buffer on the heap.
|
|
8c4cc0be
|
2024-07-09T13:56:49
|
|
fuzz: Improve debug output of reader fuzzer
|
|
59354717
|
2024-07-09T13:54:07
|
|
parser: Fix malloc failure handling in xmlInputSetEncodingHandler
Don't set encoder if allocating buffer failed. This could lead to
xmlByteConsumed processing invalid UTF-8.
|
|
da686399
|
2024-07-09T12:29:53
|
|
io: Fix return value of xmlFileRead
This broke in commit 6d27c54.
Fixes #766.
|
|
f51ad063
|
2024-07-08T11:23:39
|
|
parser: Fix error return of xmlParseBalancedChunkMemory
Only return an error code if the chunk is not well-formed to match the
2.12 behavior. Return 0 on non-fatal errors like invalid namespaces.
Fixes #765.
|
|
2e63656e
|
2024-07-07T19:21:46
|
|
parser: Check return value of inputPush
inputPush typically doesn't fail because we pre-allocate the input
table. The return value should be checked nevertheless.
|
|
ea31ac5b
|
2024-07-07T01:02:11
|
|
fuzz: Fix spaceMax
|
|
82e0455c
|
2024-07-06T19:48:07
|
|
Undeprecate some symbols for now
- xmlKeepBlanksDefault is needed as a work-around for
xmlParseBalancedChunk, see issue #727.
- ctxt->options already has an accessor and will be deprecated
later.
- input->cur, input->base, input->end: See #762.
|
|
29e3ab92
|
2024-07-06T15:48:43
|
|
fuzz: Make reallocs more likely
|
|
1e5375c1
|
2024-07-06T15:15:57
|
|
SAX2: Check return value of xmlPushInput
Fix null deref in case of malloc failure.
|
|
38195cf5
|
2024-07-06T14:58:16
|
|
parser: Don't produce names with invalid UTF-8 in recovery mode
|
|
de3221b1
|
2024-07-06T15:23:30
|
|
fuzz: Adjust for xmlNodeParseContent changes
xmlStringGetNodeList returns NULL again for empty strings.
|
|
c45c15f5
|
2024-07-04T15:15:58
|
|
ci: Add job for perl-XML-LibXML
|
|
ec088109
|
2024-07-04T15:15:17
|
|
parser: Upgrade XML_IO_NETWORK_ATTEMPT to error
Fixes XML::LibXML test suite.
|
|
f86d17c1
|
2024-07-04T15:14:54
|
|
encoding: Fix xmlParseCharEncoding
Make "UTF-16" return the UTF16LE handler as before.
Fix error return.
|
|
10082a3d
|
2024-07-04T03:35:17
|
|
testchar: Don't invoke encoding handler directly
|
|
446a3610
|
2024-07-03T13:56:41
|
|
test: add a downstream integration test job for nokogiri
Related to #758
|
|
67fa4a43
|
2024-07-03T13:40:04
|
|
meson: Disable python when python is disabled
|
|
e2a49afe
|
2024-07-03T20:18:24
|
|
build: Read version number from VERSION file
|
|
c3731347
|
2024-07-03T18:20:17
|
|
build: Introduce LIBXML_MINOR_COMPAT
This is set to 0 for now but could be used to avoid ABI stability
issues.
|
|
606310a3
|
2024-07-03T18:05:05
|
|
meson: Set soversion
|
|
944cc23c
|
2024-07-03T15:54:32
|
|
tree: Fix handling of empty strings in xmlNodeParseContent
We shouldn't create an empty text node to match the old behavior.
Fixes #759.
|
|
46ec621e
|
2024-07-03T15:48:01
|
|
encoding: Clarify xmlUconvConvert
|
|
48fec242
|
2024-07-03T15:11:20
|
|
encoding: Remove duplicate code
Fix recent commit.
|
|
71fb2579
|
2024-07-03T14:35:49
|
|
encoding: Fix ICU build
|
|
80aabea1
|
2024-07-03T11:55:38
|
|
SAX2: Reenable 'directory' as base URI fallback
Apparently, some users overwrite this member manually to set a base URI
for memory streams.
Fixes #753.
|
|
842a0448
|
2024-07-03T11:46:06
|
|
valid: Restore ID lookup
Revert a change from d025cfbb and don't overwrite ID table entries, so
that the first attribute will be returned if there are duplicate IDs.
This requires two other changes:
- Attributes in entity content are never added to the ID table. This
seems reasonable.
- Remove the optimization to skip ID lookup when copying and the target
document has an empty ID table. This also seems more correct since the
document could have ID declarations nevertheless or we could be
copying xml:ids into the document for the first time.
Fixes #757.
|
|
f9065261
|
2024-07-02T23:43:28
|
|
SAX2: Fix HTML IDs
Short-lived regression. Fixes #755.
|
|
785ed5c4
|
2024-07-02T23:03:46
|
|
meson: Don't auto-enable legacy and tls
These features should be requested explicitly.
|
|
96d850c3
|
2024-07-02T22:43:49
|
|
save: Fix "Factor out xmlSaveWriteIndent"
|
|
205e56da
|
2024-07-02T22:32:43
|
|
parser: Undeprecate ctxt->directory
|
|
8fb1dc9a
|
2024-07-02T22:17:08
|
|
Clarify xpointer() extension removal
|
|
fdfeecfe
|
2024-07-02T21:54:26
|
|
parser: Reenable ctxt->directory
Unused internally, but used in downstream code.
Should fix #753.
|
|
c127c89f
|
2024-07-02T21:05:22
|
|
catalog: Deprecate xmlCatalogSetDefaultPrefer
|
|
606f4108
|
2024-07-02T20:57:15
|
|
parser: Allow to disable catalogs with parser options
Implement XML_PARSE_NO_SYS_CATALOG and XML_PARSE_NO_CATALOG_PI.
Fixes #735.
|
|
6794c1b9
|
2024-07-02T19:51:05
|
|
globals: Document remaining thread-local vars as deprecated
See #407.
|
|
35146ff3
|
2024-07-02T19:43:24
|
|
save: Implement xmlSaveSetIndentString
Allow to set indent string without using global xmlTreeIndentString.
See #736.
|
|
7cc619d5
|
2024-07-02T19:22:32
|
|
save: Implement save options for indenting
Implement XML_SAVE_NO_INDENT to disable and XML_SAVE_INDENT to enable
indenting regardless of the global xmlIndentTreeOutput.
Implement XML_SAVE_EMPTY to enable empty tags regardless of the global
xmlSaveNoEmptyTags.
See #736.
|
|
2c4204ec
|
2024-07-02T19:14:40
|
|
save: Factor out xmlSaveWriteIndent
|
|
202045f8
|
2024-07-02T18:51:59
|
|
save: Pass options to xmlSaveCtxtInit
|
|
197e09d5
|
2024-07-02T19:46:51
|
|
parser: Fix xmlLoadResource
Short-lived regression.
|
|
ede5d99a
|
2024-07-02T01:42:33
|
|
parser: Fix typo
|
|
866be54e
|
2024-07-02T04:27:53
|
|
parser: Don't use deprecated xmlSplitQName
|
|
30ef7755
|
2024-07-02T04:02:16
|
|
parser: Don't use deprecated xmlCopyChar
|
|
751ba00e
|
2024-07-02T03:41:05
|
|
parser: Don't use deprecated xmlSwitchInputEncoding
|
|
9a4770ef
|
2024-07-02T02:18:03
|
|
doc: Improve documentation
|
|
0b0dd989
|
2024-06-28T23:13:38
|
|
parser: Fix EBCDIC detection
|