From c8f7408db73d2f2ccacb25a2b4fef8dfebdfc6cb Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Mon, 27 Nov 2023 08:02:59 +0100 Subject: [PATCH] tdf#158302 fix build against system-libxml-2.12 Seen in a fedora:40 container, using --with-system-libcmis, --with-system-liblangtag and --with-system-xmlsec. Change-Id: I9d748d3dc0b70dbfdfcb6b99c9ce8440bda6f326 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159980 Tested-by: Jenkins Reviewed-by: Miklos Vajna --- drawinglayer/source/tools/primitive2dxmldump.cxx | 1 + filter/source/xsltfilter/LibXSLTTransformer.cxx | 2 +- helpcompiler/source/HelpLinker.cxx | 4 ++++ include/xmloff/xmltoken.hxx | 2 +- sax/source/fastparser/fastparser.cxx | 2 +- sc/source/core/tool/interpr7.cxx | 1 + sc/source/filter/xml/XMLExportDataPilot.cxx | 2 +- sc/source/filter/xml/XMLExportDatabaseRanges.cxx | 2 +- sc/source/filter/xml/xmlfilti.cxx | 6 +++--- unoxml/source/dom/attr.cxx | 1 + unoxml/source/dom/document.cxx | 1 + unoxml/source/dom/documentbuilder.cxx | 1 + unoxml/source/dom/entity.cxx | 1 + unoxml/source/xpath/xpathapi.cxx | 7 ++++++- xmloff/source/core/xmltoken.cxx | 2 +- xmloff/source/style/PageMasterStyleMap.cxx | 2 +- xmlsecurity/inc/xmlsec-wrapper.h | 1 + xmlsecurity/inc/xmlsec/saxhelper.hxx | 1 + 18 files changed, 28 insertions(+), 11 deletions(-) diff --git a/drawinglayer/source/tools/primitive2dxmldump.cxx b/drawinglayer/source/tools/primitive2dxmldump.cxx index 76aefec902ea..f3b9ef1bc919 100644 --- a/drawinglayer/source/tools/primitive2dxmldump.cxx +++ b/drawinglayer/source/tools/primitive2dxmldump.cxx @@ -15,6 +15,7 @@ #include #include +#include #include #include diff --git a/filter/source/xsltfilter/LibXSLTTransformer.cxx b/filter/source/xsltfilter/LibXSLTTransformer.cxx index 1a7c34805f1b..5e9a7c4bcd35 100644 --- a/filter/source/xsltfilter/LibXSLTTransformer.cxx +++ b/filter/source/xsltfilter/LibXSLTTransformer.cxx @@ -333,7 +333,7 @@ namespace XSLT } else { - xmlErrorPtr lastErr = xmlGetLastError(); + const xmlError* lastErr = xmlGetLastError(); OUString msg; if (lastErr) msg = OStringToOUString(lastErr->message, RTL_TEXTENCODING_UTF8); diff --git a/helpcompiler/source/HelpLinker.cxx b/helpcompiler/source/HelpLinker.cxx index 3d52834dbe6b..898a8b26392a 100644 --- a/helpcompiler/source/HelpLinker.cxx +++ b/helpcompiler/source/HelpLinker.cxx @@ -815,7 +815,11 @@ static const HelpProcessingException* GpXMLParsingException = nullptr; extern "C" { +#if LIBXML_VERSION >= 21200 +static void StructuredXMLErrorFunction(SAL_UNUSED_PARAMETER void *, const xmlError* error) +#else static void StructuredXMLErrorFunction(SAL_UNUSED_PARAMETER void *, xmlErrorPtr error) +#endif { std::string aErrorMsg = error->message; std::string aXMLParsingFile; diff --git a/include/xmloff/xmltoken.hxx b/include/xmloff/xmltoken.hxx index 4e6441841774..ba42fae4d035 100644 --- a/include/xmloff/xmltoken.hxx +++ b/include/xmloff/xmltoken.hxx @@ -744,7 +744,7 @@ namespace xmloff::token { XML_EMBEDDED_VISIBLE_AREA, XML_EMBOSSED, XML_EMISSIVE_COLOR, - XML_EMPTY, + XML_TOKEN_EMPTY, XML_EMPTY_LINE_REFRESH, XML_ENABLE_NUMBERING, XML_ENABLED, diff --git a/sax/source/fastparser/fastparser.cxx b/sax/source/fastparser/fastparser.cxx index ec8065016a12..e0338e053cf0 100644 --- a/sax/source/fastparser/fastparser.cxx +++ b/sax/source/fastparser/fastparser.cxx @@ -578,7 +578,7 @@ Event& Entity::getEvent( CallbackType aType ) OUString lclGetErrorMessage( xmlParserCtxtPtr ctxt, std::u16string_view sSystemId, sal_Int32 nLine ) { const char* pMessage; - xmlErrorPtr error = xmlCtxtGetLastError( ctxt ); + const xmlError* error = xmlCtxtGetLastError( ctxt ); if( error && error->message ) pMessage = error->message; else diff --git a/sc/source/core/tool/interpr7.cxx b/sc/source/core/tool/interpr7.cxx index 352c7cf70e45..ecb4ea346396 100644 --- a/sc/source/core/tool/interpr7.cxx +++ b/sc/source/core/tool/interpr7.cxx @@ -31,6 +31,7 @@ #include #include #include +#include using namespace com::sun::star; diff --git a/sc/source/filter/xml/XMLExportDataPilot.cxx b/sc/source/filter/xml/XMLExportDataPilot.cxx index da65bec0dab7..bd5f16d828ff 100644 --- a/sc/source/filter/xml/XMLExportDataPilot.cxx +++ b/sc/source/filter/xml/XMLExportDataPilot.cxx @@ -123,7 +123,7 @@ void ScXMLExportDataPilot::WriteDPCondition(const ScQueryEntry& aQueryEntry, boo if (aQueryEntry.IsQueryByEmpty()) { - rExport.AddAttribute(XML_NAMESPACE_TABLE, XML_OPERATOR, GetXMLToken(XML_EMPTY)); + rExport.AddAttribute(XML_NAMESPACE_TABLE, XML_OPERATOR, GetXMLToken(XML_TOKEN_EMPTY)); } else if (aQueryEntry.IsQueryByNonEmpty()) { diff --git a/sc/source/filter/xml/XMLExportDatabaseRanges.cxx b/sc/source/filter/xml/XMLExportDatabaseRanges.cxx index 6905e02d651b..e4307065bd92 100644 --- a/sc/source/filter/xml/XMLExportDatabaseRanges.cxx +++ b/sc/source/filter/xml/XMLExportDatabaseRanges.cxx @@ -376,7 +376,7 @@ private: case SC_EQUAL: { if (rEntry.IsQueryByEmpty()) - return GetXMLToken(XML_EMPTY); + return GetXMLToken(XML_TOKEN_EMPTY); else if (rEntry.IsQueryByNonEmpty()) return GetXMLToken(XML_NOEMPTY); diff --git a/sc/source/filter/xml/xmlfilti.cxx b/sc/source/filter/xml/xmlfilti.cxx index 7585ce0c50fa..61f7cfe4a349 100644 --- a/sc/source/filter/xml/xmlfilti.cxx +++ b/sc/source/filter/xml/xmlfilti.cxx @@ -370,7 +370,7 @@ void ScXMLConditionContext::GetOperator( rEntry.eOp = SC_BOTPERC; else if (IsXMLToken(aOpStr, XML_BOTTOM_VALUES)) rEntry.eOp = SC_BOTVAL; - else if (IsXMLToken(aOpStr, XML_EMPTY)) + else if (IsXMLToken(aOpStr, XML_TOKEN_EMPTY)) rEntry.SetQueryByEmpty(); else if (aOpStr == u">") rEntry.eOp = SC_GREATER; @@ -422,7 +422,7 @@ void SAL_CALL ScXMLConditionContext::endFastElement( sal_Int32 /*nElement*/ ) if (maQueryItems.empty()) { ScQueryEntry::Item& rItem = rEntry.GetQueryItem(); - if (IsXMLToken(sOperator, XML_EMPTY)) + if (IsXMLToken(sOperator, XML_TOKEN_EMPTY)) return; if (IsXMLToken(sDataType, XML_NUMBER)) { @@ -753,7 +753,7 @@ void SAL_CALL ScXMLDPConditionContext::endFastElement( sal_Int32 /*nElement*/ ) else aFilterField.eConnect = SC_AND; pFilterContext->SetIsCaseSensitive(bIsCaseSensitive); - if (IsXMLToken(sOperator, XML_EMPTY)) + if (IsXMLToken(sOperator, XML_TOKEN_EMPTY)) aFilterField.SetQueryByEmpty(); else if (IsXMLToken(sOperator, XML_NOEMPTY)) aFilterField.SetQueryByNonEmpty(); diff --git a/unoxml/source/dom/attr.cxx b/unoxml/source/dom/attr.cxx index dd974d910edb..d8d873cdf055 100644 --- a/unoxml/source/dom/attr.cxx +++ b/unoxml/source/dom/attr.cxx @@ -22,6 +22,7 @@ #include #include +#include #include #include diff --git a/unoxml/source/dom/document.cxx b/unoxml/source/dom/document.cxx index cb48bd1635f8..0825fc2cd7ed 100644 --- a/unoxml/source/dom/document.cxx +++ b/unoxml/source/dom/document.cxx @@ -41,6 +41,7 @@ #include #include +#include #include diff --git a/unoxml/source/dom/documentbuilder.cxx b/unoxml/source/dom/documentbuilder.cxx index c3cd7663d2fc..3898d58e4be4 100644 --- a/unoxml/source/dom/documentbuilder.cxx +++ b/unoxml/source/dom/documentbuilder.cxx @@ -22,6 +22,7 @@ #include #include +#include #include diff --git a/unoxml/source/dom/entity.cxx b/unoxml/source/dom/entity.cxx index ccc8a0872499..98909dfe8f12 100644 --- a/unoxml/source/dom/entity.cxx +++ b/unoxml/source/dom/entity.cxx @@ -22,6 +22,7 @@ #include #include +#include using namespace css::uno; using namespace css::xml::dom; diff --git a/unoxml/source/xpath/xpathapi.cxx b/unoxml/source/xpath/xpathapi.cxx index a60083983882..c2b753783176 100644 --- a/unoxml/source/xpath/xpathapi.cxx +++ b/unoxml/source/xpath/xpathapi.cxx @@ -26,6 +26,7 @@ #include #include #include +#include #include @@ -217,7 +218,7 @@ namespace XPath return selectSingleNode(contextNode, expr); } - static OUString make_error_message(xmlErrorPtr pError) + static OUString make_error_message(const xmlError* pError) { OUStringBuffer buf; if (pError) { @@ -259,7 +260,11 @@ namespace XPath SAL_WARN("unoxml", "libxml2 error: " << str); } +#if LIBXML_VERSION >= 21200 + static void structured_error_func(void *, const xmlError* error) +#else static void structured_error_func(void *, xmlErrorPtr error) +#endif { SAL_WARN("unoxml", "libxml2 error: " << make_error_message(error)); } diff --git a/xmloff/source/core/xmltoken.cxx b/xmloff/source/core/xmltoken.cxx index 6879f37db295..e11dc0d16111 100644 --- a/xmloff/source/core/xmltoken.cxx +++ b/xmloff/source/core/xmltoken.cxx @@ -756,7 +756,7 @@ namespace xmloff::token { TOKEN( "embedded-visible-area", XML_EMBEDDED_VISIBLE_AREA ), TOKEN( "embossed", XML_EMBOSSED ), TOKEN( "emissive-color", XML_EMISSIVE_COLOR ), - TOKEN( "empty", XML_EMPTY ), + TOKEN( "empty", XML_TOKEN_EMPTY ), TOKEN( "empty-line-refresh", XML_EMPTY_LINE_REFRESH ), TOKEN( "enable-numbering", XML_ENABLE_NUMBERING ), TOKEN( "enabled", XML_ENABLED ), diff --git a/xmloff/source/style/PageMasterStyleMap.cxx b/xmloff/source/style/PageMasterStyleMap.cxx index 7b2cab4751aa..6f631289672b 100644 --- a/xmloff/source/style/PageMasterStyleMap.cxx +++ b/xmloff/source/style/PageMasterStyleMap.cxx @@ -157,7 +157,7 @@ const XMLPropertyMapEntry aXMLPageMasterStyleMap[] = PLMAP( PROP_FootnoteLineRelativeWidth, XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_PERCENT8|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_WIDTH ), PLMAP( PROP_FootnoteLineTextDistance, XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_DISTANCE ), PLMAP( PROP_FootnoteLineWeight, XML_NAMESPACE_STYLE, XML_FOOTNOTE_SEP, XML_TYPE_MEASURE16|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_WEIGHT ), - PLMAP( PROP_FootnoteLineStyle, XML_NAMESPACE_STYLE, XML_EMPTY, XML_TYPE_STRING|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_STYLE ), + PLMAP( PROP_FootnoteLineStyle, XML_NAMESPACE_STYLE, XML_TOKEN_EMPTY, XML_TYPE_STRING|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_STYLE ), PLMAP_EXT(PROP_GutterMargin, XML_NAMESPACE_LO_EXT, XML_MARGIN_GUTTER, XML_TYPE_MEASURE, CTF_PM_MARGINGUTTER), ////////////////////////////////////////////////////////////////////////// diff --git a/xmlsecurity/inc/xmlsec/saxhelper.hxx b/xmlsecurity/inc/xmlsec/saxhelper.hxx index a49ccef1894c..a5863ffd0e2a 100644 --- a/xmlsecurity/inc/xmlsec/saxhelper.hxx +++ b/xmlsecurity/inc/xmlsec/saxhelper.hxx @@ -23,6 +23,7 @@ #include +#include #include #include -- 2.42.0 --- libreoffice-7.6.3.2/xmlsecurity/inc/xmlsec-wrapper.h~ 2023-11-16 17:06:03.000000000 -0600 +++ libreoffice-7.6.3.2/xmlsecurity/inc/xmlsec-wrapper.h 2023-11-27 10:23:27.919378638 -0600 @@ -28,6 +28,7 @@ #define XMLSEC_NO_SIZE_T #endif +#include #include #include #include