Hello, I reproduced the problem indicated by fdo#48683, attached : - bt with symbols (https://bugs.freedesktop.org/attachment.cgi?id=59969&action=edit) - valgrind logs (https://bugs.freedesktop.org/attachment.cgi?id=59970&action=edit)
Here are the lines of editeng/source/editeng/impedit3.cxx which seem to cause the problem : 2421 TextPortion* pTP = 0; 2422 for ( nPortion = 0; nPortion < nPortions; nPortion++ ) 2423 { 2424 pTP = pParaPortion->GetTextPortions()[ nPortion ]; 2425 if ( ( nPos+pTP->GetLen() ) > nStartPos ) 2426 { 2427 DBG_ASSERT( nPos <= nStartPos, "Wrong Start!" ); 2428 DBG_ASSERT( nPos+pTP->GetLen() >= nEnd, "Wrong End!" ); 2429 break; 2430 } 2431 nPos = nPos + pTP->GetLen(); 2432 } 2433 DBG_ASSERT( pTP, "RecalcTextPortion: Portion not found" ); 2434 if ( ( nPos == nStartPos ) && ( (nPos+pTP->GetLen()) == nEnd ) ) 2435 { 2436 // Remove portion; 2437 sal_uInt8 nType = pTP->GetKind(); 2438 pParaPortion->GetTextPortions().Remove( nPortion ); 2439 delete pTP; Since pTP corresponds to the address of pParaPortion->GetTextPortions()[ nPortion ] I wonder if these both lines wouldn't be incompatible: - pParaPortion->GetTextPortions().Remove( nPortion ); - delete pTP; So I propose this easy fix: diff --git a/editeng/source/editeng/impedit3.cxx b/editeng/source/editeng/impedit3.cxx index 0d6877b..2c557da 100644 --- a/editeng/source/editeng/impedit3.cxx +++ b/editeng/source/editeng/impedit3.cxx @@ -2436,7 +2436,6 @@ void ImpEditEngine::RecalcTextPortion( ParaPortion* pParaPortion, sal_uInt16 nSt // Remove portion; sal_uInt8 nType = pTP->GetKind(); pParaPortion->GetTextPortions().Remove( nPortion ); - delete pTP; if ( nType == PORTIONKIND_LINEBREAK ) { TextPortion* pNext = pParaPortion->GetTextPortions()[ nPortion ]; I can commit and push on master of course but I'd like first your opinion about this since I could missed something. Julien. -- View this message in context: http://nabble.documentfoundation.org/PATCH-fix-proposed-for-fdo-48683-tp3910199p3910199.html Sent from the Dev mailing list archive at Nabble.com. _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice