From 0095c410c5a47aef2fa28b69412067a8aa6a89a1 Mon Sep 17 00:00:00 2001 From: Markus Mohrhard Date: Mon, 22 Dec 2014 06:18:07 +0100 Subject: fix OOXML validation error, related fdo#40746 e.g. fdo40746-2.ods exported to OOXML Change-Id: I48bc7a7d21ddc00eceaeb09970a2b1a60330fbf0 Reviewed-on: https://gerrit.libreoffice.org/13587 Reviewed-by: Eike Rathke Tested-by: Eike Rathke --- sc/source/filter/excel/xelink.cxx | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'sc/source/filter/excel') diff --git a/sc/source/filter/excel/xelink.cxx b/sc/source/filter/excel/xelink.cxx index bd34008f0967..d9c2196ef57d 100644 --- a/sc/source/filter/excel/xelink.cxx +++ b/sc/source/filter/excel/xelink.cxx @@ -1667,14 +1667,18 @@ void XclExpSupbook::SaveXml( XclExpXmlStream& rStrm ) FSNS(XML_r, XML_id), XclXmlUtils::ToOString( sId ).getStr(), FSEND); - pExternalLink->startElement( XML_sheetNames, FSEND); - for (size_t nPos = 0, nSize = maXctList.GetSize(); nPos < nSize; ++nPos) + if (!maXctList.IsEmpty()) { - pExternalLink->singleElement( XML_sheetName, - XML_val, XclXmlUtils::ToOString( maXctList.GetRecord( nPos )->GetTabName()).getStr(), - FSEND); + pExternalLink->startElement( XML_sheetNames, FSEND); + for (size_t nPos = 0, nSize = maXctList.GetSize(); nPos < nSize; ++nPos) + { + pExternalLink->singleElement( XML_sheetName, + XML_val, XclXmlUtils::ToOString( maXctList.GetRecord( nPos )->GetTabName()).getStr(), + FSEND); + } + pExternalLink->endElement( XML_sheetNames); + } - pExternalLink->endElement( XML_sheetNames); pExternalLink->startElement( XML_sheetDataSet, FSEND); -- cgit