diff options
author | Viorel Munteanu <ceamac@gentoo.org> | 2024-04-19 10:00:02 +0300 |
---|---|---|
committer | Viorel Munteanu <ceamac@gentoo.org> | 2024-04-19 10:00:02 +0300 |
commit | b9b44ce66013e1b517cff46a01fc6b2ec0a194c0 (patch) | |
tree | f79ad35defc1f78815a04dd07a6b18d076a696ee | |
parent | Update patchset for current live version (diff) | |
download | virtualbox-patches-b9b44ce66013e1b517cff46a01fc6b2ec0a194c0.tar.gz virtualbox-patches-b9b44ce66013e1b517cff46a01fc6b2ec0a194c0.tar.bz2 virtualbox-patches-b9b44ce66013e1b517cff46a01fc6b2ec0a194c0.zip |
Backport libxml2 patch from 7.0.16 to livev7.1.0_pre20240419
Signed-off-by: Viorel Munteanu <ceamac@gentoo.org>
-rw-r--r-- | patches/021_virtualbox-7.0.14-libxml2-2.12.patch | 43 | ||||
-rw-r--r-- | patches/021_virtualbox-7.0.16-libxml2-2.12.5.patch | 33 |
2 files changed, 33 insertions, 43 deletions
diff --git a/patches/021_virtualbox-7.0.14-libxml2-2.12.patch b/patches/021_virtualbox-7.0.14-libxml2-2.12.patch deleted file mode 100644 index a523bad..0000000 --- a/patches/021_virtualbox-7.0.14-libxml2-2.12.patch +++ /dev/null @@ -1,43 +0,0 @@ -Bug: https://bugs.gentoo.org/922445 - -The change in libxml2 is not backwards compatibe. -A patch like the one in arch does not work with 2.11, so just cast the argument to maintain compatibility with both. - -The upstream change is in include/libxml/xmlerror.h: - - typedef xmlError *xmlErrorPtr; - --typedef void (*xmlStructuredErrorFunc) (void *userData, xmlErrorPtr error); -+typedef void (*xmlStructuredErrorFunc) (void *userData, const xmlError *error); - -See also: https://gitlab.archlinux.org/archlinux/packaging/packages/virtualbox/-/blob/main/019-libxml-2-12.patch?ref_type=heads - ---- a/src/VBox/Runtime/r3/xml.cpp -+++ b/src/VBox/Runtime/r3/xml.cpp -@@ -1870,7 +1870,7 @@ - throw std::bad_alloc(); - /* per-thread so it must be here */ - xmlSetGenericErrorFunc(NULL, xmlParserBaseGenericError); -- xmlSetStructuredErrorFunc(NULL, xmlParserBaseStructuredError); -+ xmlSetStructuredErrorFunc(NULL, (xmlStructuredErrorFunc)xmlParserBaseStructuredError); - } - - XmlParserBase::~XmlParserBase() -@@ -1931,7 +1931,7 @@ - pcszFilename, - NULL, // encoding = auto - options))) -- throw XmlError(xmlCtxtGetLastError(m_ctxt)); -+ throw XmlError((xmlErrorPtr)xmlCtxtGetLastError(m_ctxt)); - - doc.refreshInternals(); - } -@@ -2191,7 +2191,7 @@ - pcszFilename, - NULL, // encoding = auto - options))) -- throw XmlError(xmlCtxtGetLastError(m_ctxt)); -+ throw XmlError((xmlErrorPtr)xmlCtxtGetLastError(m_ctxt)); - - doc.refreshInternals(); - } diff --git a/patches/021_virtualbox-7.0.16-libxml2-2.12.5.patch b/patches/021_virtualbox-7.0.16-libxml2-2.12.5.patch new file mode 100644 index 0000000..2ef7557 --- /dev/null +++ b/patches/021_virtualbox-7.0.16-libxml2-2.12.5.patch @@ -0,0 +1,33 @@ +Bug: https://bugs.gentoo.org/922445 + +The change in libxml2 is not backwards compatibe. + +The upstream change is in include/libxml/xmlerror.h: + + typedef xmlError *xmlErrorPtr; + +-typedef void (*xmlStructuredErrorFunc) (void *userData, xmlErrorPtr error); ++typedef void (*xmlStructuredErrorFunc) (void *userData, const xmlError *error); + +Upstream fixed it for dev-libs/libxml2-2.12.6, but we need the fix for 2.12.5 as well. + +--- a/src/VBox/Runtime/r3/xml.cpp ++++ b/src/VBox/Runtime/r3/xml.cpp +@@ -1856,7 +1856,7 @@ + va_end(args); + } + +-#if LIBXML_VERSION >= 21206 ++#if LIBXML_VERSION >= 21205 + static void xmlStructuredErrorFunc(void *userData, const xmlError *error) RT_NOTHROW_DEF + { + NOREF(userData); +@@ -1878,7 +1878,7 @@ + throw std::bad_alloc(); + /* per-thread so it must be here */ + xmlSetGenericErrorFunc(NULL, xmlParserBaseGenericError); +-#if LIBXML_VERSION >= 21206 ++#if LIBXML_VERSION >= 21205 + xmlSetStructuredErrorFunc(NULL, xmlStructuredErrorFunc); + #else + xmlSetStructuredErrorFunc(NULL, xmlParserBaseStructuredError); |