sw/qa/extras/ooxmlexport/data/tdf132185.docx |binary sw/qa/extras/ooxmlexport/ooxmlfieldexport.cxx | 9 +++++++++ writerfilter/source/dmapper/DomainMapper_Impl.cxx | 9 ++++++++- 3 files changed, 17 insertions(+), 1 deletion(-)
New commits: commit bd3dff49c12184e750497b066379d924815f6a01 Author: Mike Kaganski <mike.kagan...@collabora.com> AuthorDate: Sun Apr 19 19:54:59 2020 +0300 Commit: Xisco Faulí <xiscofa...@libreoffice.org> CommitDate: Tue Apr 21 17:51:54 2020 +0200 tdf#132185: field command does not necessarily end with space Change-Id: I5a5e54fb42e20855b75af7ab523465a032ab46e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92504 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com> (cherry picked from commit 8c8b3a4f83f67882b284ddc3b3fe10d3fe6dedf4) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92526 Reviewed-by: Michael Stahl <michael.st...@cib.de> Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com> Reviewed-by: Xisco Faulí <xiscofa...@libreoffice.org> Tested-by: Xisco Faulí <xiscofa...@libreoffice.org> diff --git a/sw/qa/extras/ooxmlexport/data/tdf132185.docx b/sw/qa/extras/ooxmlexport/data/tdf132185.docx new file mode 100644 index 000000000000..955de5097945 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf132185.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlfieldexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlfieldexport.cxx index 94ca46896548..ae1647d16d27 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlfieldexport.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlfieldexport.cxx @@ -694,6 +694,15 @@ DECLARE_OOXMLEXPORT_TEST(testDropDownFieldEntryLimit, "tdf126792.odt" ) CPPUNIT_ASSERT_EQUAL(sal_Int32(25), vListEntries.getLength()); } +DECLARE_OOXMLEXPORT_EXPORTONLY_TEST(testTdf132185, "tdf132185.docx") +{ + xmlDocPtr pXmlDoc = parseExport("word/footer1.xml"); + // Since the default (without xml:space attribute) is to ignore leading and trailing spaces, + // " PAGE \\* roman " will get imported as "PAGE \\* roman". This is also valid, and must be + // treated accordingly. "roman" was ignored before the fix, exporting only " PAGE ". + assertXPathContent(pXmlDoc, "/w:ftr/w:p/w:r[2]/w:instrText", " PAGE \\* roman "); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index d4e97d18f598..d41648235355 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -2685,7 +2685,14 @@ static sal_Int16 lcl_ParseNumberingType( const OUString& rCommand ) sal_Int16 nRet = style::NumberingType::PAGE_DESCRIPTOR; // The command looks like: " PAGE \* Arabic " - OUString sNumber = msfilter::util::findQuotedText(rCommand, "\\* ", ' '); + // tdf#132185: but may as well be "PAGE \* Arabic" + OUString sNumber; + constexpr OUStringLiteral rSeparator("\\* "); + if (sal_Int32 nStartIndex = rCommand.indexOf(rSeparator); nStartIndex >= 0) + { + nStartIndex += rSeparator.getLength(); + sNumber = rCommand.getToken(0, ' ', nStartIndex); + } if( !sNumber.isEmpty() ) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits