about summary refs log tree commit diff
path: root/pkgs/servers/sql/postgresql/patches
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2023-12-26 23:52:27 +0100
committerJan Tojnar <jtojnar@gmail.com>2023-12-26 23:52:27 +0100
commit2ed47724a666d908a671e1acdbddc85cc79fa249 (patch)
treef304cfe4ef982832b7eff6eeeb2808ecd504d557 /pkgs/servers/sql/postgresql/patches
parent2ac16accc0a1f6536b395f693a6fdce07f3808b6 (diff)
postgresql: Fix build with libxml2 2.12
libxml 2.12.0 made the error argument of xmlStructuredErrorFunc const
resulting in -Wincompatible-function-pointer-types error with CLang 16 and GCC 14.
https://gitlab.gnome.org/GNOME/libxml2/-/commit/61034116d0a3c8b295c6137956adc3ae55720711
Diffstat (limited to 'pkgs/servers/sql/postgresql/patches')
-rw-r--r--pkgs/servers/sql/postgresql/patches/libxml2.12-15.patch22
1 files changed, 22 insertions, 0 deletions
diff --git a/pkgs/servers/sql/postgresql/patches/libxml2.12-15.patch b/pkgs/servers/sql/postgresql/patches/libxml2.12-15.patch
new file mode 100644
index 0000000000000..13438c7d4bb75
--- /dev/null
+++ b/pkgs/servers/sql/postgresql/patches/libxml2.12-15.patch
@@ -0,0 +1,22 @@
+diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c
+index 6411f56b998..0eb39fcfc26 100644
+--- a/src/backend/utils/adt/xml.c
++++ b/src/backend/utils/adt/xml.c
+@@ -119,7 +119,7 @@ struct PgXmlErrorContext
+ 
+ static xmlParserInputPtr xmlPgEntityLoader(const char *URL, const char *ID,
+ 										   xmlParserCtxtPtr ctxt);
+-static void xml_errorHandler(void *data, xmlErrorPtr error);
++static void xml_errorHandler(void *data, const xmlError *error);
+ static void xml_ereport_by_code(int level, int sqlcode,
+ 								const char *msg, int errcode);
+ static void chopStringInfoNewlines(StringInfo str);
+@@ -1749,7 +1749,7 @@ xml_ereport(PgXmlErrorContext *errcxt, int level, int sqlcode, const char *msg)
+  * Error handler for libxml errors and warnings
+  */
+ static void
+-xml_errorHandler(void *data, xmlErrorPtr error)
++xml_errorHandler(void *data, const xmlError *error)
+ {
+ 	PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data;
+ 	xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt;