diff options
-rw-r--r-- | sw/source/core/table/swnewtable.cxx | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/sw/source/core/table/swnewtable.cxx b/sw/source/core/table/swnewtable.cxx index fb1f78b0ae61..89b07f16e7d0 100644 --- a/sw/source/core/table/swnewtable.cxx +++ b/sw/source/core/table/swnewtable.cxx @@ -2126,19 +2126,22 @@ void SwTable::CheckConsistency() const { SAL_WARN_IF( aIter == aRowSpanCells.end(), "sw.core", "Missing master box"); - SAL_WARN_IF( aIter->nLeft != nWidth || aIter->nRight != nNewWidth, - "sw.core", "Wrong position/size of overlapped table box"); - --(aIter->nRowSpan); - SAL_WARN_IF( aIter->nRowSpan != -nRowSp, "sw.core", - "Wrong row span value" ); - if( nRowSp == -1 ) + if (aIter != aRowSpanCells.end()) { - std::list< RowSpanCheck >::iterator aEraseIter = aIter; - ++aIter; - aRowSpanCells.erase( aEraseIter ); + SAL_WARN_IF( aIter->nLeft != nWidth || aIter->nRight != nNewWidth, + "sw.core", "Wrong position/size of overlapped table box"); + --(aIter->nRowSpan); + SAL_WARN_IF( aIter->nRowSpan != -nRowSp, "sw.core", + "Wrong row span value" ); + if( nRowSp == -1 ) + { + std::list< RowSpanCheck >::iterator aEraseIter = aIter; + ++aIter; + aRowSpanCells.erase( aEraseIter ); + } + else + ++aIter; } - else - ++aIter; } else if( nRowSp != 1 ) { |