From eeee19b3fcf8b0374c361c7f6c285fd5c89b5a2f Mon Sep 17 00:00:00 2001 From: László Németh Date: Fri, 11 Jun 2021 19:31:43 +0200 Subject: tdf#142387 DOCX track changes: export w:del in w:ins MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit by processing stack (revision history) of redline ranges, see GetStackCount() and GetRedlineData(). Change-Id: I7a9085bc1598f0a5e3ab4de6887a12e81738d4f2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117069 Tested-by: Jenkins Reviewed-by: László Németh --- sw/source/filter/ww8/docxattributeoutput.cxx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'sw/source') diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index c0faa7a00fff..7cbf2a8a0df0 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -3238,7 +3238,8 @@ void DocxAttributeOutput::StartRedline( const SwRedlineData * pRedlineData ) if ( !pRedlineData ) return; - // FIXME check if it's necessary to travel over the Next()'s in pRedlineData + // write out stack of this redline recursively (first the oldest) + StartRedline( pRedlineData->Next() ); OString aId( OString::number( m_nRedlineId++ ) ); @@ -3292,6 +3293,9 @@ void DocxAttributeOutput::EndRedline( const SwRedlineData * pRedlineData ) default: break; } + + // write out stack of this redline recursively (first the newest) + EndRedline( pRedlineData->Next() ); } void DocxAttributeOutput::FormatDrop( const SwTextNode& /*rNode*/, const SwFormatDrop& /*rSwFormatDrop*/, sal_uInt16 /*nStyle*/, ww8::WW8TableNodeInfo::Pointer_t /*pTextNodeInfo*/, ww8::WW8TableNodeInfoInner::Pointer_t ) -- cgit v1.2.3