|
65 | 65 | #if LIBXML_VERSION >= 20704
|
66 | 66 | #define HAVE_XMLSTRUCTUREDERRORCONTEXT 1
|
67 | 67 | #endif
|
| 68 | + |
| 69 | +/* |
| 70 | + * libxml2 2.12 decided to insert "const" into the error handler API. |
| 71 | + */ |
| 72 | +#if LIBXML_VERSION >= 21200 |
| 73 | +#define PgXmlErrorPtr const xmlError * |
| 74 | +#else |
| 75 | +#define PgXmlErrorPtr xmlErrorPtr |
| 76 | +#endif |
| 77 | + |
68 | 78 | #endif /* USE_LIBXML */
|
69 | 79 |
|
70 | 80 | #include "access/htup_details.h"
|
@@ -119,7 +129,7 @@ struct PgXmlErrorContext
|
119 | 129 |
|
120 | 130 | static xmlParserInputPtr xmlPgEntityLoader(const char *URL, const char *ID,
|
121 | 131 | xmlParserCtxtPtr ctxt);
|
122 |
| -static void xml_errorHandler(void *data, xmlErrorPtr error); |
| 132 | +static void xml_errorHandler(void *data, PgXmlErrorPtr error); |
123 | 133 | static void xml_ereport_by_code(int level, int sqlcode,
|
124 | 134 | const char *msg, int errcode);
|
125 | 135 | static void chopStringInfoNewlines(StringInfo str);
|
@@ -1752,7 +1762,7 @@ xml_ereport(PgXmlErrorContext *errcxt, int level, int sqlcode, const char *msg)
|
1752 | 1762 | * Error handler for libxml errors and warnings
|
1753 | 1763 | */
|
1754 | 1764 | static void
|
1755 |
| -xml_errorHandler(void *data, xmlErrorPtr error) |
| 1765 | +xml_errorHandler(void *data, PgXmlErrorPtr error) |
1756 | 1766 | {
|
1757 | 1767 | PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data;
|
1758 | 1768 | xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt;
|
|
0 commit comments