]> git.ipfire.org Git - thirdparty/FORT-validator.git/commitdiff
Fix relax_ng_log_str_err() signature for old libxml2 versions
authorAlberto Leiva Popper <ydahhrk@gmail.com>
Mon, 3 Jun 2024 22:48:15 +0000 (16:48 -0600)
committerAlberto Leiva Popper <ydahhrk@gmail.com>
Mon, 3 Jun 2024 22:48:15 +0000 (16:48 -0600)
Pull request #137 fixes relax_ng_log_str_err()'s argument list for
libxml2 2.12 and above, but breaks it for libxml2 2.11 and below.

src/xml/relax_ng.c

index d386078a7be392bf27c7e183fd75f9ba5639c083..21f283145345c4440a86f3a80b1275428eecc3c7 100644 (file)
@@ -35,8 +35,15 @@ relax_ng_log_warn(void *ctx, const char *msg, ...)
        VLOG_MSG(warn)
 }
 
+/* Signature changed at libxml2 commit 61034116d0a3c8b295c6137956adc3ae55720. */
+#if LIBXML_VERSION >= 21200
+#define XMLERROR_PARAMTYPE const xmlError *
+#else
+#define XMLERROR_PARAMTYPE xmlErrorPtr
+#endif
+
 static void
-relax_ng_log_str_err(void *userData, const xmlError *error)
+relax_ng_log_str_err(void *userData, XMLERROR_PARAMTYPE error)
 {
        pr_val_err("%s (at line %d)", error->message, error->line);
 }