From 7ea1bbe712cef48a97faffdf03b45f2812a93e62 Mon Sep 17 00:00:00 2001 From: Dinesh Patil Date: Thu, 12 Jun 2014 11:34:32 +0530 Subject: [PATCH] fdo#79591 Values for docPr name and shape ID attributes were set invalid Values set for docPr name and shape ID attributes in RT file were not valid as per UTF-8 encoding format and hence was showing RT document as corrupt with error message "invalid character". Calling add() function with current parameters is causing issue and setting invalid values so modified the second parameter which will set valid values to the specified parameters. Reviewed on: https://gerrit.libreoffice.org/9746 Change-Id: I3b48e53adbe5ed844235e596bb98eb396133845a --- oox/source/export/vmlexport.cxx | 2 +- sw/qa/extras/ooxmlexport/data/fdo79591.docx | Bin 0 -> 25140 bytes sw/qa/extras/ooxmlexport/ooxmlsdrexport.cxx | 15 +++++++++++++++ sw/source/filter/ww8/docxsdrexport.cxx | 2 +- 4 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 sw/qa/extras/ooxmlexport/data/fdo79591.docx diff --git a/oox/source/export/vmlexport.cxx b/oox/source/export/vmlexport.cxx index 490bc7b6df87..69242d6d4701 100644 --- a/oox/source/export/vmlexport.cxx +++ b/oox/source/export/vmlexport.cxx @@ -821,7 +821,7 @@ void VMLExport::Commit( EscherPropertyContainer& rProps, const Rectangle& rRect OUString idStr = SvxMSDffManager::MSDFFReadZString(aStream, it->nPropSize, true); aStream.Seek(0); if (!IsWaterMarkShape(m_pSdrObject->GetName())) - m_pShapeAttrList->add(XML_ID, OUStringToOString(idStr, RTL_TEXTENCODING_UTF8)); + m_pShapeAttrList->add(XML_ID, OUStringToOString(idStr, RTL_TEXTENCODING_UTF8).getStr()); bAlreadyWritten[ESCHER_Prop_wzName] = true; } diff --git a/sw/qa/extras/ooxmlexport/data/fdo79591.docx b/sw/qa/extras/ooxmlexport/data/fdo79591.docx new file mode 100644 index 0000000000000000000000000000000000000000..32a61debd4b1386f1c2520e97a6eb7f4ece9ac35 GIT binary patch literal 25140 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 } +DECLARE_OOXMLEXPORT_TEST(testfdo79591, "fdo79591.docx") +{ + /* Values set for docPr name and shape ID attributes + * in RT file were not valid as per UTF-8 encoding format + * and hence was showing RT document as corrupt with error + * message "invalid character" + */ + xmlDocPtr pXmlDoc = parseExport("word/document.xml"); + if (!pXmlDoc) + return; + + assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Choice/w:drawing/wp:anchor/wp:docPr", "name", ""); + assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r/mc:AlternateContent/mc:Fallback/w:pict/v:shape", "ID", ""); +} + #endif CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/sw/source/filter/ww8/docxsdrexport.cxx b/sw/source/filter/ww8/docxsdrexport.cxx index 42e9f9cd2abd..d3efe2ad9b36 100644 --- a/sw/source/filter/ww8/docxsdrexport.cxx +++ b/sw/source/filter/ww8/docxsdrexport.cxx @@ -724,7 +724,7 @@ void DocxSdrExport::writeDMLDrawing(const SdrObject* pSdrObject, const SwFrmFmt* sax_fastparser::FastAttributeList* pDocPrAttrList = pFS->createAttrList(); pDocPrAttrList->add(XML_id, OString::number(nAnchorId).getStr()); - pDocPrAttrList->add(XML_name, OUStringToOString(pSdrObject->GetName(), RTL_TEXTENCODING_UTF8)); + pDocPrAttrList->add(XML_name, OUStringToOString(pSdrObject->GetName(), RTL_TEXTENCODING_UTF8).getStr()); if (!pSdrObject->GetTitle().isEmpty()) pDocPrAttrList->add(XML_title, OUStringToOString(pSdrObject->GetTitle(), RTL_TEXTENCODING_UTF8)); if (!pSdrObject->GetDescription().isEmpty())