xmlsecurity/source/xmlsec/xmlstreamio.cxx | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)
New commits: commit 576f899811a22e83b6fb6a120c8da303b1f4cac1 Author: Miklos Vajna <vmik...@collabora.co.uk> Date: Thu Jun 7 09:41:19 2018 +0200 Fix CppunitTest_xmlsecurity_signing with system-xmlsec 1.2.26 Swap the order of the default and custom callback registration, since the order of lookup is now reversed since <https://github.com/lsh123/xmlsec/commit/968646fb9b8428174a112fce2f08b1ec89d0ed97>. Thanks Tomas Chvatal for reporting this. Change-Id: I60a347454701a679db4ccd8924a723a236d5edff Reviewed-on: https://gerrit.libreoffice.org/55404 Reviewed-by: Miklos Vajna <vmik...@collabora.co.uk> Tested-by: Tomáš Chvátal <tchva...@suse.cz> diff --git a/xmlsecurity/source/xmlsec/xmlstreamio.cxx b/xmlsecurity/source/xmlsec/xmlstreamio.cxx index de32f8286c1b..83dd83e66a25 100644 --- a/xmlsecurity/source/xmlsec/xmlstreamio.cxx +++ b/xmlsecurity/source/xmlsec/xmlstreamio.cxx @@ -157,6 +157,25 @@ XSECXMLSEC_DLLPUBLIC int xmlEnableStreamInputCallbacks() //Notes: all none default callbacks will lose. xmlSecIOCleanupCallbacks() ; + // Newer xmlsec wants the callback order in the opposite direction. +#if XMLSEC_VERSION_MAJOR > 1 || (XMLSEC_VERSION_MAJOR == 1 && XMLSEC_VERSION_MINOR > 2) || (XMLSEC_VERSION_MAJOR == 1 && XMLSEC_VERSION_MINOR == 2 && XMLSEC_VERSION_SUBMINOR >= 26) + //Register the default callbacks. + //Notes: the error will cause xmlsec working problems. + int cbs = xmlSecIORegisterDefaultCallbacks() ; + if( cbs < 0 ) { + return -1 ; + } + + //Register my classbacks. + cbs = xmlSecIORegisterCallbacks( + xmlStreamMatch, + xmlStreamOpen, + xmlStreamRead, + xmlStreamClose ) ; + if( cbs < 0 ) { + return -1 ; + } +#else //Register my classbacks. int cbs = xmlSecIORegisterCallbacks( xmlStreamMatch, @@ -173,6 +192,7 @@ XSECXMLSEC_DLLPUBLIC int xmlEnableStreamInputCallbacks() if( cbs < 0 ) { return -1 ; } +#endif enableXmlStreamIO |= XMLSTREAMIO_INITIALIZED ; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits