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

6744 Commits

Author SHA1 Message Date
Mike Dalessio
bbbbbb4649 parser: implement xmlCtxtGetOptions
In 712a31ab, the `options` struct member was deprecated. To allow
callers to check the status of options bits, introduce
xmlCtxtGetOptions.
2024-06-20 20:39:54 +00:00
Heiko Becker
a4517bfeaf meson: Add libxml2 part of include dir to pc file
The autotools build results in a pkgconfig file, which looks like this:

"
...
includedir=${prefix}/include
...
Cflags: -I${includedir}/libxml2
"

The latter part is missing when built with meson.
2024-06-20 20:38:19 +00:00
Rosen Penev
217e9b7af2 clang-tidy: don't return in void functions
Found with readability-redundant-control-flow

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-20 20:37:34 +00:00
Nick Wellnhofer
4c3d22b059 uri: Fix xmlBuildURI with NULL base
Don't try to parse URI if base is NULL. Fixes functions like xmlParseDTD
with certain filenames.

Should fix #742.
2024-06-20 21:15:08 +02:00
Nick Wellnhofer
1dd5e76a69 xinclude: Don't remove root element
Don't replace include element at root with empty nodeset.
2024-06-18 20:12:03 +02:00
Nick Wellnhofer
860fb460ea SAX2: Fix null deref after malloc failure
Short-lived regression.
2024-06-18 20:00:45 +02:00
Rosen Penev
1d8bd1262b meson: fix icu and iconv om BSDs again
libdir is needed when searching for iconv, not includedir.

Remove OpenBSD from the bsd list. Something is wrong there and iconv.h
is installed somewhere else.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-18 11:12:07 +00:00
Rosen Penev
f61d23b8c6 meson: only apply threads_dep to runtest
Not needed elsewhere.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-17 12:57:59 -07:00
Nick Wellnhofer
32cac377c8 parser: Selectively reenable reading from "-"
Make filename "-" mean stdin for legacy SAX1 functions and xmlReadFile.
This should hopefully fix most command line utilities.

See #737.
2024-06-17 18:08:31 +02:00
Nick Wellnhofer
52ce0d70f9 tests: Add XInclude test for issue #733 2024-06-17 17:35:12 +02:00
Nick Wellnhofer
c5e9a5b2c9 parser: Use catalogs with resource loader 2024-06-17 15:49:25 +02:00
Nick Wellnhofer
57004006ae reader: Fix xmlTextReaderReadString
Regressed in commit 7cbf609a.

Should fix #738.
2024-06-17 15:49:03 +02:00
Nick Wellnhofer
3c7c831c7c xinclude: Set XPath context doc
Regressed in commit 78eab7a1.
2024-06-17 15:47:43 +02:00
Nick Wellnhofer
6deebe036a parser: Make xmlInputCreateUrl handle HTTP input 2024-06-17 15:47:43 +02:00
Nick Wellnhofer
d2fd9d37b0 parser: Fix swapped arguments 2024-06-17 15:47:43 +02:00
Nick Wellnhofer
1ff484339e xinclude: Load included documents with XML_PARSE_DTDLOAD
We must detect ID attributes declared in external DTDs.

Regressed in 12f0bb94.
2024-06-17 15:47:43 +02:00
Nick Wellnhofer
3aca5bcfc3 doc: Ignore empty headers 2024-06-17 15:47:43 +02:00
Nick Wellnhofer
5a9a0e6fe6 testapi: Don't test xmlunicode functions 2024-06-17 15:47:42 +02:00
Nick Wellnhofer
1112699cfa legacy: Remove most legacy functions from public headers
Also remove warning messages.
2024-06-17 15:47:42 +02:00
Rosen Penev
b4b4162fc7 meson: fix compilation on BSDs with icu+iconv
on BSDs, icu is installed and included from /usr/local. When found,
libiconv headers override the normal ones and thus result in a missing
link. Work around this oddity and add the link.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-16 19:47:47 -07:00
Rosen Penev
915951b87b meson: add DEFS to CFLAGS
Adding a configuration flag as an include directory is wrong and errors
on BSDs.

ERROR: Include dir -DU_DISABLE_RENAMING=1 does not exist.

Matches the autotools build now.

Requires has_argument to fix non BSDs because of an annoying meson
quirk.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-16 19:43:44 -07:00
Nick Wellnhofer
faae3a91ce SAX2: Split out legacy SAX1 handling
Split xmlSAX2StartElement into two functions handling legacy SAX1 and
HTML.
2024-06-17 00:54:47 +02:00
Nick Wellnhofer
2b0c4abb1f threads: Remove pthread weak symbol hack
On Linux, we tried to detect the presence of libpthread to disable
things like locks. This questionable hack doesn't work since glibc 2.34
which merged libpthread into libc.
2024-06-17 00:54:47 +02:00
Nick Wellnhofer
3848802723 xmllint: Support libreadline without history 2024-06-17 00:54:47 +02:00
Nick Wellnhofer
5fca9498fd doc: Hide internal macro 2024-06-16 19:56:08 +02:00
Nick Wellnhofer
fb2b9cdabf doc: Remove broken struct field description 2024-06-16 19:51:44 +02:00
Nick Wellnhofer
33a1f8978d legacy: Merge SAX.c into legacy.c 2024-06-16 19:17:41 +02:00
Nick Wellnhofer
1341deac13 xmllint: Move shell to xmllint
Move source code for xmllint shell to shell.c and move it from the
libxml2 library to the xmllint executable.

Also allow shell to run without XPath and debug modules.

Add stubs for old shell API functions in legacy build mode.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
c9b065914f xmllint: Fix resetting error in xmlHTMLPrintError
Make sure that we don't change the error handler when fuzzing.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
481fd6bbee tests: Remove testThreads.c
This was merged into runtest.c some time ago.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
1b6403583b schemas: Stop using xmlValidateNotationUse
Simplify symbol availability logic.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
fa01278dcd regexp: Hide experimental legacy code
This was never made public.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
10d60d15d6 regexp: Stop using LIBXML_AUTOMATA_ENABLED
This macro always equals LIBXML_REGEXP_ENABLED.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
11c3f84b6c SAX2: Always make xmlSAX2{Start,End}Element public
Simplify symbol availability logic.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
f307237e14 schemas: Use private copy of global NaN and Inf
Simplify symbol availability logic.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
b0fc67aa22 build: Remove --with-tree configuration option
This option would allow for a smaller, but mostly useless minimal build.
But it complicates the symbol availability logic in an insane way and
requires specialized tools like our custom C parser in doc/apibuild.py.

See #717.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
7cf7a54aea build: Only enable linker version script in legacy mode
The version script is deprecated but required for backward
compatibility.
2024-06-16 18:47:12 +02:00
Nick Wellnhofer
7b65c90f2a Regenerate libxml2-api.xml and testapi.c 2024-06-16 18:47:12 +02:00
Nick Wellnhofer
4967277931 parser: Make XML_INPUT constants signed
Avoid conversion to unsigned which triggers (harmless) UBSan warnings.
2024-06-16 18:47:12 +02:00
Rosen Penev
52d9d768a7 runtest: move catalog.h out of threads define.
It's needed when threads are disabled.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2024-06-15 16:46:03 -07:00
Nick Wellnhofer
08a6a0848e Fix previous commit 2024-06-15 22:00:00 +02:00
Nick Wellnhofer
84666581c2 catalog: Fix initialization
Initialize mutex via xmlInitParser.

Fix some other initialization calls.
2024-06-15 21:15:26 +02:00
Nick Wellnhofer
898e5a1442 build: Remove compiler TLS warning 2024-06-15 20:17:18 +02:00
Nick Wellnhofer
e714f506e4 build: Stop installing libxml.m4
This file is deprecated and unmaintained. It will be kept in the source
tree for a while.
2024-06-15 20:14:03 +02:00
Nick Wellnhofer
6ed39a82c6 runtest: Allow catalogs
It's enough to disable the system catalog to avoid unwanted allocations.
2024-06-15 19:41:47 +02:00
Nick Wellnhofer
208f27f964 include: Don't define ATTRIBUTE_UNUSED in public header
Stop polluting namespace with unprefixed names.
2024-06-15 19:13:08 +02:00
Nick Wellnhofer
387f0c784f include: Readd circular dependency between tree.h and parser.h
There are dozens of downstream projects that only include tree.h but use
declarations from parser.h. This broke after the recent cleanup of
circular dependencies.

Make tree.h include parser.h again. This is a hack but doesn't change
the include directory struture.

This commit only made it into the 2.12 branch but wasn't applied to
master, so the issue turned up in 2.13.0 again.

Should fix #734.
2024-06-15 16:27:54 +02:00
Nick Wellnhofer
bd208d5fe1 xinclude: Add another missing include 2024-06-15 01:40:06 +02:00
Nick Wellnhofer
f070acc564 autotools: Abort if external libraries couldn't be found
This makes the configuration process more robust and deterministic.
Before, we would silently disable options.
2024-06-15 01:23:39 +02:00
Jan Alexander Steffens (heftig)
599ceaffad
xinclude: Add missing include
Gambas fails to compile with

    error: 'xmlStructuredErrorFunc' has not been declared
2024-06-15 00:59:54 +02:00