sw/source/core/text/inftxt.cxx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
New commits: commit 2085d8203b0ff49b6e43ff900f497fb5343708d8 Author: Caolán McNamara <caol...@redhat.com> Date: Thu Dec 22 15:42:10 2016 +0000 avoid crash in 130+ odt export tests e.g. fdo44181-1.ott to odt Change-Id: I23403415378ddf50ff007fb4b5d88b4009668bf6 diff --git a/sw/source/core/text/inftxt.cxx b/sw/source/core/text/inftxt.cxx index 71b99b1..d12cdb7 100644 --- a/sw/source/core/text/inftxt.cxx +++ b/sw/source/core/text/inftxt.cxx @@ -1196,14 +1196,14 @@ void SwTextPaintInfo::DrawBackBrush( const SwLinePortion &rPor ) const nLen = pPos->GetLen(); for ( int i = nIdx; i < (nIdx + nLen); ++i ) { - if ( GetText()[i] == CH_TXTATR_NEWLINE ) + if (i < GetText().getLength() && GetText()[i] == CH_TXTATR_NEWLINE) { if ( i >= (GetIdx() + rPor.GetLen()) ) { goto drawcontinue; } } - if ( GetText()[i] != CH_BLANK ) + if (i >= GetText().getLength() || GetText()[i] != CH_BLANK) { draw = true; if ( i >= (GetIdx() + rPor.GetLen()) ) @@ -1230,11 +1230,11 @@ void SwTextPaintInfo::DrawBackBrush( const SwLinePortion &rPor ) const nLen = pPos->GetLen(); for ( int i = (nIdx + nLen - 1); i >= nIdx; --i ) { - if ( GetText()[i] == CH_TXTATR_NEWLINE ) + if (i < GetText().getLength() && GetText()[i] == CH_TXTATR_NEWLINE) { continue; } - if ( GetText()[i] != CH_BLANK ) + if (i >= GetText().getLength() || GetText()[i] != CH_BLANK) { sal_uInt16 nOldWidth = rPor.Width(); sal_uInt16 nNewWidth = GetTextSize( m_pOut, nullptr, GetText(), nIdx, (i + 1 - nIdx) ).Width();
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits