summaryrefslogtreecommitdiff
path: root/dev-qt/qtwebengine/files/qtwebengine-6.5.3-libxml2-2.12.patch
blob: d725f32091062d8f62f668484588c226f8b1e56b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Patch status: fixed in >=chromium-121.0.6104.0 with caveat

Fix build failure[1] with libxml2-2.12 due xmlError changes.

For convenience, use LIBXML_VERSION like webkit did[2] rather than
chromium's upstream fix[3] which relies on bundled libxml2 always
being 2.12.x (spares having to use has_version).

When fix lands in qtwebengine, will need to depend on >=libxml2-2.12
unless Qt decides to do something different considering that cmake
uses system libxml2 by default and it may be too early to enforce it.

[1] https://bugs.gentoo.org/917601
[2] https://github.com/WebKit/WebKit/commit/1bad176b2496579d760852c80cff3ad9fb7c3a4b
[3] https://crrev.com/871f8ae9b65ce2679b0bc0be36902d65edf0c1e4
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor.h
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor.h
@@ -78,5 +78,9 @@
   void reset();
 
+#if LIBXML_VERSION >= 21200
+  static void ParseErrorFunc(void* user_data, const xmlError*);
+#else
   static void ParseErrorFunc(void* user_data, xmlError*);
+#endif
   static void GenericErrorFunc(void* user_data, const char* msg, ...);
 
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
@@ -67,5 +67,9 @@
 }
 
+#if LIBXML_VERSION >= 21200
+void XSLTProcessor::ParseErrorFunc(void* user_data, const xmlError* error) {
+#else
 void XSLTProcessor::ParseErrorFunc(void* user_data, xmlError* error) {
+#endif
   FrameConsole* console = static_cast<FrameConsole*>(user_data);
   if (!console)