diff options
author | Justin Luth <justin_luth@sil.org> | 2015-04-16 13:31:39 +0300 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2015-07-15 23:23:38 +0000 |
commit | e1b123896d5b0a96c2959b6b6768c7cffabafd4f (patch) | |
tree | 60d1ddb4c39fcbe2eb944b23e19b8d4286a065a1 | |
parent | 7ef02ac0ad217240c9adc6279f54342a066182aa (diff) |
tdf#87437 exclude CR/cell break from redline deletions
The marker used in Word to identify table cell division was being
included in the track-changes deletion from the following cell if
the deletion was the first node in the cell. This would cause the
two table cells to merge into one when changes were accepted by
Word. (Problem not seen in LibreOffice itself.)
Change-Id: Ia98017cbba7d3a43b67764ae0fa6447b7e90ca86
Reviewed-on: https://gerrit.libreoffice.org/15340
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
-rw-r--r-- | sw/source/filter/ww8/wrtw8nds.cxx | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sw/source/filter/ww8/wrtw8nds.cxx b/sw/source/filter/ww8/wrtw8nds.cxx index 8b3adb4c5337..b3162aa9b628 100644 --- a/sw/source/filter/ww8/wrtw8nds.cxx +++ b/sw/source/filter/ww8/wrtw8nds.cxx @@ -2114,13 +2114,19 @@ void MSWordExportBase::OutputTextNode( const SwTextNode& rNode ) sal_Int32 nAktPos = 0; sal_Int32 const nEnd = aStr.getLength(); + bool bIsEndOfCell = false; bool bIncludeEndOfParaCRInRedlineProperties = false; sal_Int32 nOpenAttrWithRange = 0; OUString aStringForImage("\001"); ww8::WW8TableNodeInfoInner::Pointer_t pTextNodeInfoInner; if ( pTextNodeInfo.get() != NULL ) + { pTextNodeInfoInner = pTextNodeInfo->getFirstInner(); + if ( pTextNodeInfoInner->isEndOfCell() ) { + bIsEndOfCell = true; + } + } do { const SwRedlineData* pRedlineData = aAttrIter.GetRunLevelRedline( nAktPos ); @@ -2323,6 +2329,11 @@ void MSWordExportBase::OutputTextNode( const SwTextNode& rNode ) } WriteCR( pTextNodeInfoInner ); + + if ( bIsEndOfCell ) + { + AttrOutput().OutputFKP(true); + } } } } |