diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-02-13 10:33:37 +0000 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2015-02-20 12:15:35 +0000 |
commit | dd925ae885eea0fa84730196d4df64ca9b9584d1 (patch) | |
tree | b998578554ccf8b0ddd309d5d5ee1e4b80b4eb7a | |
parent | be3f5f82719930f415b5ca38451e8aa4bcd02027 (diff) |
Resolves: tdf#79569 crash undoing tricky cell merge
Change-Id: I68d774d0d3758cdb67864d7939a7e1167dd9a7df
(cherry picked from commit 21796a5fb92fd9773017b782a654a8b5a190cc66)
Reviewed-on: https://gerrit.libreoffice.org/14469
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
-rw-r--r-- | sw/source/core/undo/untbl.cxx | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/sw/source/core/undo/untbl.cxx b/sw/source/core/undo/untbl.cxx index aafa683e289b..178cd036a138 100644 --- a/sw/source/core/undo/untbl.cxx +++ b/sw/source/core/undo/untbl.cxx @@ -1350,21 +1350,22 @@ void _SaveBox::CreateNew( SwTable& rTbl, SwTableLine& rParent, _SaveTable& rSTbl { // search box for StartNode in old table SwTableBox* pBox = rTbl.GetTblBox( nSttNode ); - OSL_ENSURE( pBox, "Where is my TableBox?" ); - - SwFrmFmt* pOld = pBox->GetFrmFmt(); - pBox->RegisterToFormat( *pFmt ); - if( !pOld->GetDepends() ) - delete pOld; + if (pBox) + { + SwFrmFmt* pOld = pBox->GetFrmFmt(); + pBox->RegisterToFormat( *pFmt ); + if( !pOld->GetDepends() ) + delete pOld; - pBox->setRowSpan( nRowSpan ); + pBox->setRowSpan( nRowSpan ); - SwTableBoxes* pTBoxes = &pBox->GetUpper()->GetTabBoxes(); - pTBoxes->erase( std::find( pTBoxes->begin(), pTBoxes->end(), pBox ) ); + SwTableBoxes* pTBoxes = &pBox->GetUpper()->GetTabBoxes(); + pTBoxes->erase( std::find( pTBoxes->begin(), pTBoxes->end(), pBox ) ); - pBox->SetUpper( &rParent ); - pTBoxes = &rParent.GetTabBoxes(); - pTBoxes->push_back( pBox ); + pBox->SetUpper( &rParent ); + pTBoxes = &rParent.GetTabBoxes(); + pTBoxes->push_back( pBox ); + } } if( pNext ) |