diff options
author | Lionel Elie Mamane <lionel@mamane.lu> | 2015-01-19 11:44:55 +0100 |
---|---|---|
committer | Lionel Elie Mamane <lionel@mamane.lu> | 2015-01-19 13:19:55 +0100 |
commit | e8a68c1f50f32a0f9d8bcdf16c1270c319910baa (patch) | |
tree | 47f8831ce1eb2776bfafb1299a899def62ae23e1 | |
parent | e5bb4e6dbc568c90c97a6a341a5224fb91228f98 (diff) |
fixup previous commit:
OSL_ENSURE does not execute in non-debug builds (and is deprecated).
Do not try to seek back if paint did not seek.
This happens in particular when there is no data source attached (and thus trying to seek fails).
Change-Id: I3f4908c4dcae2bb120bf58c1218e3386c40d5721
-rw-r--r-- | include/sal/log-areas.dox | 1 | ||||
-rw-r--r-- | svtools/source/brwbox/brwbox2.cxx | 7 |
2 files changed, 7 insertions, 1 deletions
diff --git a/include/sal/log-areas.dox b/include/sal/log-areas.dox index 2cd854674412..12645df0c5f2 100644 --- a/include/sal/log-areas.dox +++ b/include/sal/log-areas.dox @@ -298,6 +298,7 @@ certain functionality. @section svtools @li @c svtools +@li @c svtools.brwbox @li @c svtools.config @li @c svtools.contnr @li @c svtools.control diff --git a/svtools/source/brwbox/brwbox2.cxx b/svtools/source/brwbox/brwbox2.cxx index 70486e944764..a3fe78ca1f44 100644 --- a/svtools/source/brwbox/brwbox2.cxx +++ b/svtools/source/brwbox/brwbox2.cxx @@ -888,6 +888,7 @@ void BrowseBox::ImplPaintData(OutputDevice& _rOut, const Rectangle& _rRect, bool Color aDelimiterLineColor( ::svtools::ColorConfig().GetColorValue( ::svtools::CALCGRID ).nColor ); // redraw the invalid fields + bool paint_seeked(false); for ( sal_uLong nRelRow = nRelTopRow; nRelRow <= nRelBottomRow && (sal_uLong)nTopRow+nRelRow < (sal_uLong)nRowCount; ++nRelRow, aPos.Y() += nDataRowHeigt ) @@ -900,6 +901,7 @@ void BrowseBox::ImplPaintData(OutputDevice& _rOut, const Rectangle& _rRect, bool // prepare row sal_uLong nRow = nTopRow+nRelRow; + paint_seeked = true; if ( !SeekRow( nRow) ) { OSL_FAIL("BrowseBox::ImplPaintData: SeekRow failed"); } @@ -1032,7 +1034,10 @@ void BrowseBox::ImplPaintData(OutputDevice& _rOut, const Rectangle& _rRect, bool } } - OSL_ENSURE(SeekRow(nCurRow), "BrowseBox::ImplPaintData could not seek back to current row after paint"); + if (paint_seeked && !SeekRow(nCurRow)) + { + SAL_WARN("svtools.brwbox", "BrowseBox::ImplPaintData could not seek back to current row after paint"); + } if (aPos.Y() > aOverallAreaBRPos.Y() + 1) aPos.Y() = aOverallAreaBRPos.Y() + 1; |