diff options
Diffstat (limited to 'dev-db/postgresql/files/postgresql-13-xml-2.12.patch')
-rw-r--r-- | dev-db/postgresql/files/postgresql-13-xml-2.12.patch | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/dev-db/postgresql/files/postgresql-13-xml-2.12.patch b/dev-db/postgresql/files/postgresql-13-xml-2.12.patch deleted file mode 100644 index a8daa6e7ce2f..000000000000 --- a/dev-db/postgresql/files/postgresql-13-xml-2.12.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 7c53b1977ba6bed81deca3164c17e61f10725226 Mon Sep 17 00:00:00 2001 -From: Tom Lane <tgl@sss.pgh.pa.us> -Date: Mon, 29 Jan 2024 12:06:08 -0500 -Subject: [PATCH] Fix incompatibilities with libxml2 >= 2.12.0. - -libxml2 changed the required signature of error handler callbacks -to make the passed xmlError struct "const". This is causing build -failures on buildfarm member caiman, and no doubt will start showing -up in the field quite soon. Add a version check to adjust the -declaration of xml_errorHandler() according to LIBXML_VERSION. - -2.12.x also produces deprecation warnings for contrib/xml2/xpath.c's -assignment to xmlLoadExtDtdDefaultValue. I see no good reason for -that to still be there, seeing that we disabled external DTDs (at a -lower level) years ago for security reasons. Let's just remove it. - -Back-patch to all supported branches, since they might all get built -with newer libxml2 once it gets a bit more popular. (The back -branches produce another deprecation warning about xpath.c's use of -xmlSubstituteEntitiesDefault(). We ought to consider whether to -back-patch all or part of commit 65c5864d7 to silence that. It's -less urgent though, since it won't break the buildfarm.) - -Discussion: https://postgr.es/m/1389505.1706382262@sss.pgh.pa.us ---- - contrib/xml2/xpath.c | 1 - - src/backend/utils/adt/xml.c | 14 ++++++++++++-- - 2 files changed, 12 insertions(+), 3 deletions(-) - -diff --git a/contrib/xml2/xpath.c b/contrib/xml2/xpath.c -index 1e5b71d9a0..f44caf0020 100644 ---- a/contrib/xml2/xpath.c -+++ b/contrib/xml2/xpath.c -@@ -75,7 +75,6 @@ pgxml_parser_init(PgXmlStrictness strictness) - xmlInitParser(); - - xmlSubstituteEntitiesDefault(1); -- xmlLoadExtDtdDefaultValue = 1; - - return xmlerrcxt; - } -diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c -index 7fc9669fb0..febe0a6220 100644 ---- a/src/backend/utils/adt/xml.c -+++ b/src/backend/utils/adt/xml.c -@@ -65,6 +65,16 @@ - #if LIBXML_VERSION >= 20704 - #define HAVE_XMLSTRUCTUREDERRORCONTEXT 1 - #endif -+ -+/* -+ * libxml2 2.12 decided to insert "const" into the error handler API. -+ */ -+#if LIBXML_VERSION >= 21200 -+#define PgXmlErrorPtr const xmlError * -+#else -+#define PgXmlErrorPtr xmlErrorPtr -+#endif -+ - #endif /* USE_LIBXML */ - - #include "access/htup_details.h" -@@ -119,7 +129,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, PgXmlErrorPtr error); - static void xml_ereport_by_code(int level, int sqlcode, - const char *msg, int errcode); - static void chopStringInfoNewlines(StringInfo str); -@@ -1750,7 +1760,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, PgXmlErrorPtr error) - { - PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data; - xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt; --- -2.30.2 - |