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")
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
xmlDocPtr pXmlDocRels = parseExport("word/charts/_rels/chart2.xml.rels");
xmlDocPtr pXmlDocRels = parseExport("word/charts/_rels/chart1.xml.rels");
assertXPath(pXmlDocRels,
"/rels:Relationships/rels:Relationship[@Target='../embeddings/Microsoft_Excel_Macro-Enabled_Worksheet1.xlsm']",
"Type",
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/package");
// check the content too
xmlDocPtr pXmlDocChart1 = parseExport("word/charts/chart2.xml");
xmlDocPtr pXmlDocChart1 = parseExport("word/charts/chart1.xml");
assertXPath(pXmlDocChart1,
"/c:chartSpace/c:externalData",
"id",
......
......@@ -4488,10 +4488,9 @@ void DocxAttributeOutput::WritePostponedChart()
FSEND );
OString aRelId;
static sal_Int32 nChartCount = 0;
nChartCount++;
m_nChartCount++;
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,
FSNS( XML_xmlns, XML_c ), "http://schemas.openxmlformats.org/drawingml/2006/chart",
......@@ -8432,6 +8431,7 @@ DocxAttributeOutput::DocxAttributeOutput( DocxExport &rExport, FSHelperPtr pSeri
m_startedHyperlink( false ),
m_nHyperLinkCount(0),
m_nFieldsInHyperlink( 0 ),
m_nChartCount(0),
m_postponedChart( nullptr ),
pendingPlaceholder( nullptr ),
m_postitFieldsMaxId( 0 ),
......
......@@ -862,6 +862,8 @@ private:
std::unique_ptr< std::list<PostponedOLE> > m_pPostponedOLEs;
std::vector<const SwOLENode*> m_aPostponedMaths;
/// count charts consistently for unit tests
unsigned int m_nChartCount;
const SdrObject* m_postponedChart;
Size m_postponedChartSize;
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