editeng/source/editeng/impedit5.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
New commits: commit 417f681eb69a61fa1876a2c96a1284a16f72abc1 Author: Xisco Fauli <[email protected]> AuthorDate: Fri Aug 25 14:22:43 2023 +0200 Commit: Xisco Fauli <[email protected]> CommitDate: Fri Sep 1 10:10:33 2023 +0200 editeng: fix crash in EditDoc::FindAttribs check pNode before calling EditDoc::FindAttribs. This is the only place where EditDoc::FindAttribs is called from See https://crashreport.libreoffice.org/stats/signature/EditDoc::FindAttribs(ContentNode%20*,long,long,SfxItemSet%20&) Change-Id: I3ed0724b1113965c09c66413987bb85777ec9a16 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156097 Tested-by: Jenkins Reviewed-by: Noel Grandin <[email protected]> (cherry picked from commit 8bb505d3e16deed2c7bb5636cfd765013ec23965) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156130 Reviewed-by: Xisco Fauli <[email protected]> diff --git a/editeng/source/editeng/impedit5.cxx b/editeng/source/editeng/impedit5.cxx index 3a87c4b5bfb7..27656ea3dc66 100644 --- a/editeng/source/editeng/impedit5.cxx +++ b/editeng/source/editeng/impedit5.cxx @@ -316,7 +316,7 @@ SfxItemSet ImpEditEngine::GetAttribs( EditSelection aSel, EditEngineAttribs nOnl for ( sal_Int32 nNode = nStartNode; nNode <= nEndNode; nNode++ ) { ContentNode* pNode = aEditDoc.GetObject( nNode ); - DBG_ASSERT( aEditDoc.GetObject( nNode ), "Node not found: GetAttrib" ); + assert( pNode && "Node not found: GetAttrib" ); const sal_Int32 nStartPos = nNode==nStartNode ? aSel.Min().GetIndex() : 0; const sal_Int32 nEndPos = nNode==nEndNode ? aSel.Max().GetIndex() : pNode->Len(); // Can also be == nStart! @@ -327,7 +327,8 @@ SfxItemSet ImpEditEngine::GetAttribs( EditSelection aSel, EditEngineAttribs nOnl // 2) Examine Style and paragraph attributes only when OFF... // First the very hard formatting... - EditDoc::FindAttribs( pNode, nStartPos, nEndPos, aCurSet ); + if (pNode) + EditDoc::FindAttribs( pNode, nStartPos, nEndPos, aCurSet ); if( nOnlyHardAttrib != EditEngineAttribs::OnlyHard ) {
