diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2016-01-08 11:23:48 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2016-02-02 14:20:29 +0100 |
commit | 63bc23bbdc2f2bdbe7360e9c8f832b7427c0ae50 (patch) | |
tree | a8fb1d38108bc7fc000d3e75b4d30ca1387c560e /writerfilter | |
parent | 51ae7ff17758b30793b617e5137058af165467e7 (diff) |
tdf#96308 RTF import: fix tab stop inheritance inside table cells
The tab stop list is a paragraph property, and RTF requires to repeat it
after \s as direct formatting, otherwise the parser should be assumed
that the tab stop list is cleared as a direct formatting.
Non-buffered text handles that in getDefaultSPRM(), handle it directly
in the RTF_PARD code for buffered text.
(cherry picked from commit 1ec88cdb82a28851c4b97d7f043d8bcec3c675e8)
Conflicts:
sw/qa/extras/rtfimport/rtfimport.cxx
Change-Id: I16b09bc4c177df5a74d16653b829b198aa1a800f
Reviewed-on: https://gerrit.libreoffice.org/21996
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
(cherry picked from commit cb64c29389939048666141eb4dddcfae4dd70ee5)
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/rtftok/rtfdocumentimpl.cxx | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index 6dd24056837c..be5a966d3ec6 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -2981,6 +2981,8 @@ RTFError RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword) { // We are still in a table. m_aStates.top().aParagraphSprms.set(NS_ooxml::LN_inTbl, std::make_shared<RTFValue>(1)); + // Ideally getDefaultSPRM() would take care of this, but it would not when we're buffering. + m_aStates.top().aParagraphSprms.set(NS_ooxml::LN_CT_PPrBase_tabs, std::make_shared<RTFValue>()); } m_aStates.top().resetFrame(); |