diff options
Diffstat (limited to 'sw')
-rw-r--r-- | sw/qa/extras/ooxmlexport/data/fdo77719.docx | bin | 0 -> 16680 bytes | |||
-rw-r--r-- | sw/qa/extras/ooxmlexport/ooxmlsdrexport.cxx | 8 | ||||
-rw-r--r-- | sw/source/filter/ww8/docxsdrexport.cxx | 3 |
3 files changed, 11 insertions, 0 deletions
diff --git a/sw/qa/extras/ooxmlexport/data/fdo77719.docx b/sw/qa/extras/ooxmlexport/data/fdo77719.docx Binary files differnew file mode 100644 index 000000000000..e671b33f4e76 --- /dev/null +++ b/sw/qa/extras/ooxmlexport/data/fdo77719.docx diff --git a/sw/qa/extras/ooxmlexport/ooxmlsdrexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlsdrexport.cxx index cc04809835e2..06182df566d5 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlsdrexport.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlsdrexport.cxx @@ -1105,6 +1105,14 @@ DECLARE_OOXMLEXPORT_TEST(testShapeEffectPreservation, "shape-effect-preservation "val", "50000"); } +DECLARE_OOXMLEXPORT_TEST(fdo77719, "fdo77719.docx") +{ + xmlDocPtr pXmlDoc = parseExport("word/document.xml"); + if (!pXmlDoc) + return; + assertXPath(pXmlDoc, "/w:document[1]/w:body[1]/w:p[1]/w:r[2]/mc:AlternateContent[1]/mc:Choice[1]/w:drawing[1]/wp:anchor[1]/a:graphic[1]/a:graphicData[1]/wps:wsp[1]/wps:spPr[1]/a:prstGeom[1]", "prst", "rect"); +} + #endif CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/sw/source/filter/ww8/docxsdrexport.cxx b/sw/source/filter/ww8/docxsdrexport.cxx index 5c5d5a233dcb..563e124a9b23 100644 --- a/sw/source/filter/ww8/docxsdrexport.cxx +++ b/sw/source/filter/ww8/docxsdrexport.cxx @@ -1164,6 +1164,9 @@ void DocxSdrExport::writeDMLTextFrame(sw::Frame* pParentFrame, int nAnchorId) } } } + //Empty shapeType will lead to corruption so to avoid that shapeType is set to default i.e. "rect" + if (shapeType.isEmpty()) + shapeType = "rect"; pFS->singleElementNS(XML_a, XML_prstGeom, XML_prst, OUStringToOString(shapeType, RTL_TEXTENCODING_UTF8).getStr(), |