Kaydet (Commit) c56e0858 authored tarafından Michael Stahl's avatar Michael Stahl

sw: DOCX export: eliminate chart numbering non-determinism

... that was causing test failures on some but not all platforms.

Change-Id: I0d04cd6e540ea2693a3ec8511d615a9b0fecf456
üst 3f2bdb75
...@@ -828,13 +828,13 @@ DECLARE_OOXMLEXPORT_TEST(testContentTypeXLSM, "fdo76098.docx") ...@@ -828,13 +828,13 @@ DECLARE_OOXMLEXPORT_TEST(testContentTypeXLSM, "fdo76098.docx")
assertXPath(pXmlDoc, "/ContentType:Types/ContentType:Override[@PartName='/word/embeddings/Microsoft_Excel_Macro-Enabled_Worksheet1.xlsm']", "ContentType", "application/vnd.ms-excel.sheet.macroEnabled.12"); assertXPath(pXmlDoc, "/ContentType:Types/ContentType:Override[@PartName='/word/embeddings/Microsoft_Excel_Macro-Enabled_Worksheet1.xlsm']", "ContentType", "application/vnd.ms-excel.sheet.macroEnabled.12");
// check the rels too // check the rels too
xmlDocPtr pXmlDocRels = parseExport("word/charts/_rels/chart2.xml.rels"); xmlDocPtr pXmlDocRels = parseExport("word/charts/_rels/chart1.xml.rels");
assertXPath(pXmlDocRels, assertXPath(pXmlDocRels,
"/rels:Relationships/rels:Relationship[@Target='../embeddings/Microsoft_Excel_Macro-Enabled_Worksheet1.xlsm']", "/rels:Relationships/rels:Relationship[@Target='../embeddings/Microsoft_Excel_Macro-Enabled_Worksheet1.xlsm']",
"Type", "Type",
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/package"); "http://schemas.openxmlformats.org/officeDocument/2006/relationships/package");
// check the content too // check the content too
xmlDocPtr pXmlDocChart1 = parseExport("word/charts/chart2.xml"); xmlDocPtr pXmlDocChart1 = parseExport("word/charts/chart1.xml");
assertXPath(pXmlDocChart1, assertXPath(pXmlDocChart1,
"/c:chartSpace/c:externalData", "/c:chartSpace/c:externalData",
"id", "id",
......
...@@ -4488,10 +4488,9 @@ void DocxAttributeOutput::WritePostponedChart() ...@@ -4488,10 +4488,9 @@ void DocxAttributeOutput::WritePostponedChart()
FSEND ); FSEND );
OString aRelId; OString aRelId;
static sal_Int32 nChartCount = 0; m_nChartCount++;
nChartCount++;
uno::Reference< frame::XModel > xModel( xChartDoc, uno::UNO_QUERY ); uno::Reference< frame::XModel > xModel( xChartDoc, uno::UNO_QUERY );
aRelId = m_rExport.OutputChart( xModel, nChartCount, m_pSerializer ); aRelId = m_rExport.OutputChart( xModel, m_nChartCount, m_pSerializer );
m_pSerializer->singleElementNS( XML_c, XML_chart, m_pSerializer->singleElementNS( XML_c, XML_chart,
FSNS( XML_xmlns, XML_c ), "http://schemas.openxmlformats.org/drawingml/2006/chart", FSNS( XML_xmlns, XML_c ), "http://schemas.openxmlformats.org/drawingml/2006/chart",
...@@ -8432,6 +8431,7 @@ DocxAttributeOutput::DocxAttributeOutput( DocxExport &rExport, FSHelperPtr pSeri ...@@ -8432,6 +8431,7 @@ DocxAttributeOutput::DocxAttributeOutput( DocxExport &rExport, FSHelperPtr pSeri
m_startedHyperlink( false ), m_startedHyperlink( false ),
m_nHyperLinkCount(0), m_nHyperLinkCount(0),
m_nFieldsInHyperlink( 0 ), m_nFieldsInHyperlink( 0 ),
m_nChartCount(0),
m_postponedChart( nullptr ), m_postponedChart( nullptr ),
pendingPlaceholder( nullptr ), pendingPlaceholder( nullptr ),
m_postitFieldsMaxId( 0 ), m_postitFieldsMaxId( 0 ),
......
...@@ -862,6 +862,8 @@ private: ...@@ -862,6 +862,8 @@ private:
std::unique_ptr< std::list<PostponedOLE> > m_pPostponedOLEs; std::unique_ptr< std::list<PostponedOLE> > m_pPostponedOLEs;
std::vector<const SwOLENode*> m_aPostponedMaths; std::vector<const SwOLENode*> m_aPostponedMaths;
/// count charts consistently for unit tests
unsigned int m_nChartCount;
const SdrObject* m_postponedChart; const SdrObject* m_postponedChart;
Size m_postponedChartSize; Size m_postponedChartSize;
std::vector<const SdrObject*> m_aPostponedFormControls; std::vector<const SdrObject*> m_aPostponedFormControls;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment