[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - filter/source sw/qa
Szabolcs (via logerrit)
logerrit at kemper.freedesktop.org
Tue Apr 21 16:45:06 UTC 2020
filter/source/msfilter/escherex.cxx | 5 +++++
sw/qa/extras/ooxmlexport/data/tdf123346_ArrowMarker.docx |binary
sw/qa/extras/ooxmlexport/ooxmlexport3.cxx | 12 ++++++++++++
3 files changed, 17 insertions(+)
New commits:
commit a01bcc88af9d1ac47af64abab95f9048b4870740
Author: Szabolcs <szabolcs450 at gmail.com>
AuthorDate: Mon Mar 30 17:12:05 2020 +0200
Commit: Xisco Faulí <xiscofauli at libreoffice.org>
CommitDate: Tue Apr 21 18:44:25 2020 +0200
tdf#123346 DOCX VML shape export: fix arrow marker
In some cases at import there are extra space separated
numbers at the end of the names of arrow objects.
Remove these extra numbers before they could interfere
with the choice of markers.
See commit 2d3b7a07c02c90d2d64a630ab84886ef3096edfc
(tdf#100491 fix DOCX import shape line with arrow marker).
Co_Author: Balázs Regényi
Change-Id: I2156502b0ce5cd755a731359398a40edabb603a6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91375
Tested-by: László Németh <nemeth at numbertext.org>
Reviewed-by: László Németh <nemeth at numbertext.org>
(cherry picked from commit 68531e459e7a922319e6bfe8b7a5282ba0320182)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92535
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli at libreoffice.org>
diff --git a/filter/source/msfilter/escherex.cxx b/filter/source/msfilter/escherex.cxx
index 0279bc6684e7..f04043e9156a 100644
--- a/filter/source/msfilter/escherex.cxx
+++ b/filter/source/msfilter/escherex.cxx
@@ -894,6 +894,11 @@ bool EscherPropertyContainer::GetLineArrow( const bool bLineStart,
OUString aArrowStartName = *o3tl::doAccess<OUString>(aAny);
sal_uInt16 nWhich = bLineStart ? sal_uInt16(XATTR_LINESTART) : sal_uInt16(XATTR_LINEEND);
+ // remove extra space separated number
+ sal_Int32 nPos = aArrowStartName.lastIndexOf(' ');
+ if (nPos > -1 && aArrowStartName.lastIndexOf(' ', nPos) > -1)
+ aArrowStartName = aArrowStartName.copy(0, nPos);
+
OUString aApiName = SvxUnogetApiNameForItem(nWhich, aArrowStartName);
bool bIsMapped = true;
if ( !aApiName.isEmpty() )
diff --git a/sw/qa/extras/ooxmlexport/data/tdf123346_ArrowMarker.docx b/sw/qa/extras/ooxmlexport/data/tdf123346_ArrowMarker.docx
new file mode 100644
index 000000000000..770bab263d7b
Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/tdf123346_ArrowMarker.docx differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx
index 8e79024c90f0..7e9bcb639012 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport3.cxx
@@ -1106,6 +1106,18 @@ DECLARE_OOXMLEXPORT_TEST(testArrowPosition, "tdf104565_ArrowPosition.docx")
"/wp:positionV/wp:posOffset", "516255");
}
+DECLARE_OOXMLEXPORT_TEST(testArrowMarker, "tdf123346_ArrowMarker.docx")
+{
+ // tdf#123346: Check arrow marker.
+
+ xmlDocPtr pXmlDocument = parseExport("word/document.xml");
+ if (!pXmlDocument)
+ return;
+
+ assertXPath(pXmlDocument, "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor"
+ "/a:graphic/a:graphicData/wps:wsp/wps:spPr/a:ln/a:tailEnd", "type", "arrow");
+}
+
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
More information about the Libreoffice-commits
mailing list