[Libreoffice-commits] .: Branch 'libreoffice-4-0' - svx/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Thu Jan 17 02:05:00 PST 2013


 svx/source/svdraw/svdmodel.cxx |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 54b885dbcf9cf0d32407cb068de8d72e9d441576
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Wed Jan 16 20:09:37 2013 +0000

    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
    (cherry picked from commit 63de2b8f1493f24669c78df3bc2d48d13528bd9f)
    Reviewed-on: https://gerrit.libreoffice.org/1726
    Reviewed-by: Noel Power <noel.power at suse.com>
    Tested-by: Noel Power <noel.power at suse.com>

diff --git a/svx/source/svdraw/svdmodel.cxx b/svx/source/svdraw/svdmodel.cxx
index 4e9c6e4..75993f6 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


More information about the Libreoffice-commits mailing list