summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@collabora.co.uk>2014-12-22 06:22:45 +0100
committerEike Rathke <erack@redhat.com>2015-01-08 13:30:15 +0000
commit62bc15f270614afa37c6615fc34cd79f45026da5 (patch)
tree20be023bdf78a19a54d1237f944726d4dbaa6646
parent1eb1d5a643f3526d540abe783edac78c8ded476b (diff)
fix another validation error for OOXML, related fdo#40746
e.g. exporting fdo40746-2.ods as OOXML Change-Id: I8a19ec2caecbc3687229d820ac2ec11fc01facd1 Reviewed-on: https://gerrit.libreoffice.org/13590 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
-rw-r--r--sc/source/filter/excel/xelink.cxx18
1 files changed, 11 insertions, 7 deletions
diff --git a/sc/source/filter/excel/xelink.cxx b/sc/source/filter/excel/xelink.cxx
index 3de8363fc9d6..08b2afbf73dd 100644
--- a/sc/source/filter/excel/xelink.cxx
+++ b/sc/source/filter/excel/xelink.cxx
@@ -242,7 +242,7 @@ protected:
/** Writes the list of externalName elements. */
void WriteExtNameBufferXml( XclExpXmlStream& rStrm );
-private:
+protected:
typedef boost::shared_ptr< XclExpExtNameBuffer > XclExpExtNameBfrRef;
XclExpExtNameBfrRef mxExtNameBfr; /// List of EXTERNNAME records.
};
@@ -1684,14 +1684,18 @@ void XclExpSupbook::SaveXml( XclExpXmlStream& rStrm )
}
- pExternalLink->startElement( XML_sheetDataSet, FSEND);
+ if (!maXctList.IsEmpty() || mxExtNameBfr)
+ {
+ pExternalLink->startElement( XML_sheetDataSet, FSEND);
- // sheetData elements
- maXctList.SaveXml( rStrm );
- // externalName elements
- WriteExtNameBufferXml( rStrm );
+ // sheetData elements
+ maXctList.SaveXml( rStrm );
+ // externalName elements
+ WriteExtNameBufferXml( rStrm );
- pExternalLink->endElement( XML_sheetDataSet);
+ pExternalLink->endElement( XML_sheetDataSet);
+
+ }
pExternalLink->endElement( XML_externalBook);
pExternalLink->endElement( XML_externalLink);
}