From ccf475364881cebc13d50cf2cc9af2040b416bd3 Mon Sep 17 00:00:00 2001 From: Serge Krot Date: Tue, 17 Oct 2017 19:03:14 +0200 Subject: [PATCH] tdf#38778 fix missing run properties export for fields in docx Not all runs got their text properties written during field export - previously only the first run had them. Adds SwTextNode param to EndRun and EndRuby methods, implementation empty for rtf and doc though. Change-Id: I77f39b40689feb9664044e61824ad3bb97776638 Reviewed-on: https://gerrit.libreoffice.org/43465 Reviewed-by: Serge Krot (CIB) Tested-by: Serge Krot (CIB) --- .../tdf38778_properties_in_run_for_field.doc | Bin 0 -> 25600 bytes sw/qa/extras/ooxmlexport/ooxmlexport4.cxx | 67 +++++++ sw/source/filter/ww8/attributeoutputbase.hxx | 4 +- sw/source/filter/ww8/docxattributeoutput.cxx | 181 +++++++++++++----- sw/source/filter/ww8/docxattributeoutput.hxx | 12 +- sw/source/filter/ww8/docxexport.cxx | 4 +- sw/source/filter/ww8/rtfattributeoutput.cxx | 10 +- sw/source/filter/ww8/rtfattributeoutput.hxx | 4 +- sw/source/filter/ww8/wrtw8nds.cxx | 22 +-- sw/source/filter/ww8/wrtww8.hxx | 2 +- sw/source/filter/ww8/ww8attributeoutput.hxx | 4 +- 11 files changed, 238 insertions(+), 72 deletions(-) create mode 100644 sw/qa/extras/ooxmlexport/data/tdf38778_properties_in_run_for_field.doc diff --git a/sw/qa/extras/ooxmlexport/data/tdf38778_properties_in_run_for_field.doc b/sw/qa/extras/ooxmlexport/data/tdf38778_properties_in_run_for_field.doc new file mode 100644 index 0000000000000000000000000000000000000000..5f0f7238a153dfb54d33cad9cd241368260ecc59 GIT binary patch literal 25600 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 +// +//