diff options
Diffstat (limited to 'sw/source/core')
-rw-r--r-- | sw/source/core/doc/DocumentRedlineManager.cxx | 7 | ||||
-rw-r--r-- | sw/source/core/text/redlnitr.cxx | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/sw/source/core/doc/DocumentRedlineManager.cxx b/sw/source/core/doc/DocumentRedlineManager.cxx index 8a9a70ae2bb9..5052e320f216 100644 --- a/sw/source/core/doc/DocumentRedlineManager.cxx +++ b/sw/source/core/doc/DocumentRedlineManager.cxx @@ -1666,8 +1666,13 @@ DocumentRedlineManager::AppendRedline(SwRangeRedline* pNewRedl, bool const bCall pNewRedl->SetEnd( *pRStt, pEnd ); break; - case SwComparePosition::CollideStart: case SwComparePosition::CollideEnd: + if (pRStt->nContent != 0) + { // tdf#147466 HACK: don't combine in this case to avoid the tdf#119571 code from *undeleting* section nodes + break; + } + [[fallthrough]]; + case SwComparePosition::CollideStart: if( pRedl->IsOwnRedline( *pNewRedl ) && pRedl->CanCombine( *pNewRedl ) ) { diff --git a/sw/source/core/text/redlnitr.cxx b/sw/source/core/text/redlnitr.cxx index 3613469d7703..5b1e30c47018 100644 --- a/sw/source/core/text/redlnitr.cxx +++ b/sw/source/core/text/redlnitr.cxx @@ -425,7 +425,7 @@ CheckParaRedlineMerge(SwTextFrame & rFrame, SwTextNode & rTextNode, } for (auto const pSectionNode : sections) { - pSectionNode->DelFrames(rFrame.getRootFrame()); + pSectionNode->GetSection().GetFormat()->DelFrames(/*rFrame.getRootFrame()*/); } } auto pRet(std::make_unique<sw::MergedPara>(rFrame, std::move(extents), |