-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Closed
Description
Hello there is a bug in the #if statements statements for poco, when building unbundled against older versions of expat.h.
specifically, XML_ERROR_INVALID_ARGUMENT was introduced in expat 2.2.1 and the #if statements check for 2.1.
here is a .patch I have against 1.11.0 with a fix:
diff -ru poco-poco-1.11.0-release-orig/XML/src/ParserEngine.cpp poco-poco-1.11.0-release/XML/src/ParserEngine.cpp
--- poco-poco-1.11.0-release-orig/XML/src/ParserEngine.cpp 2022-02-07 19:31:35.673783363 +0000
+++ poco-poco-1.11.0-release/XML/src/ParserEngine.cpp 2022-02-07 19:31:52.325782439 +0000
@@ -604,7 +604,7 @@
throw SAXParseException("Reserved prefix 'xmlns' must not be declared or undeclared", locator());
case XML_ERROR_RESERVED_NAMESPACE_URI:
throw SAXParseException("Prefix must not be bound to one of the reserved namespace names", locator());
- #if XML_MAJOR_VERSION > 2 || XML_MINOR_VERSION >= 1
+ #if XML_MAJOR_VERSION > 2 || (XML_MINOR_VERSION >= 2 && XML_MICRO_VERSION >= 1)
case XML_ERROR_INVALID_ARGUMENT:
throw SAXParseException("Invalid argument", locator());
#endif
Reactions are currently unavailable