diff options
author | Caolán McNamara <caolanm@redhat.com> | 2013-01-16 20:09:37 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-01-16 20:12:09 +0000 |
commit | 63de2b8f1493f24669c78df3bc2d48d13528bd9f (patch) | |
tree | a5bf07ff3ad6839cb831d93e735f1d4f9e5f2d48 | |
parent | 2003d4ffbf9865bc87cbe081f48f98b287223820 (diff) |
Resolves: fdo#59183 Copy 4 or more slides then crash
regression from 17afe4cea7e01aef1e5270cc09f438bc6fde3211 which is totally
forgivable as its riddled with asserts that suggest there should be no
out-of-bounds accesses and there probably shouldn't and those queries are
possibly bugs. But double-checking 3-6 it is the case that non-existant pages
were queried for in that version too, so return NULL on out-of-bounds
like the original pre-stl conversion code did.
Change-Id: Ic918419b6cb76b083de6b6911dde9d6e00258324
-rw-r--r-- | svx/source/svdraw/svdmodel.cxx | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/svx/source/svdraw/svdmodel.cxx b/svx/source/svdraw/svdmodel.cxx index aae7534099a3..01abfb7c9bca 100644 --- a/svx/source/svdraw/svdmodel.cxx +++ b/svx/source/svdraw/svdmodel.cxx @@ -1996,13 +1996,13 @@ SvxNumType SdrModel::GetPageNumType() const const SdrPage* SdrModel::GetPage(sal_uInt16 nPgNum) const { DBG_ASSERT(nPgNum < maPages.size(), "SdrModel::GetPage: Access out of range (!)"); - return maPages[nPgNum]; + return nPgNum < maPages.size() ? maPages[nPgNum] : NULL; } SdrPage* SdrModel::GetPage(sal_uInt16 nPgNum) { DBG_ASSERT(nPgNum < maPages.size(), "SdrModel::GetPage: Access out of range (!)"); - return maPages[nPgNum]; + return nPgNum < maPages.size() ? maPages[nPgNum] : NULL; } sal_uInt16 SdrModel::GetPageCount() const |