tdf#122186: Fix broken Input list after RT in DOCX format
We should not write out the text of the field, because it
confuses the import code and it's unneeded anyway.
Change-Id: Id114f74c5d135e9fe6cb059e25ebf324464c8362
Reviewed-on: https://gerrit.libreoffice.org/66338
Tested-by: Jenkins
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
diff --git a/sw/qa/extras/ooxmlexport/data/tdf122186_input_list.odt b/sw/qa/extras/ooxmlexport/data/tdf122186_input_list.odt
new file mode 100755
index 0000000..76a6289f
--- /dev/null
+++ b/sw/qa/extras/ooxmlexport/data/tdf122186_input_list.odt
Binary files differ
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
index dac9337..1f59e1c 100644
--- a/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
+++ b/sw/qa/extras/ooxmlexport/ooxmlexport13.cxx
@@ -86,6 +86,17 @@
assertXPathContent(pXmlDoc, "/w:document/w:body/w:p/w:sdt/w:sdtContent/w:r/w:t", u" ");
}
DECLARE_OOXMLEXPORT_TEST(testInputListExport, "tdf122186_input_list.odt")
{
// We need to make sure we don't export the text itself next to the input list field
xmlDocPtr pXmlDoc = parseExport("word/document.xml");
if (!pXmlDoc)
return;
assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r", 5);
assertXPath(pXmlDoc, "/w:document/w:body/w:p/w:r[4]/w:t", 0);
}
CPPUNIT_PLUGIN_IMPLEMENT();
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index e845fe0..00e6249 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -2030,7 +2030,7 @@
sExpand = static_cast<SwAuthorityField const*>(rInfos.pField.get())
->ExpandCitation(AUTH_FIELD_TITLE, nullptr);
}
else
else if(rInfos.eType != ww::eFORMDROPDOWN)
{
sExpand = rInfos.pField->ExpandField(true, nullptr);
}