diff options
author | Aron Budea <aron.budea@collabora.com> | 2022-03-24 22:02:17 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2022-03-28 08:59:13 +0200 |
commit | c8bfb498ca93b990069d7bcd09cb1240d8c8faee (patch) | |
tree | 50faafbdf9b1b4725a208863ec3ad09e44528a07 | |
parent | make default selected table style to Default Table Style for only online (diff) | |
download | core-c8bfb498ca93b990069d7bcd09cb1240d8c8faee.tar.gz core-c8bfb498ca93b990069d7bcd09cb1240d8c8faee.zip |
sc: fix crash in SdrPageView::GetPageWindow()
From crashreport:
SIG Fatal signal received: SIGSEGV
SdrPageView::GetPageWindow(unsigned int) const
svx/source/svdraw/svdpagv.cxx:84
(anonymous namespace)::ScLOKProxyObjectContact::calculateGridOffsetForViewOjectContact(basegfx::B2DVector&, sdr::contact::ViewObjectContact const&) const
sc/source/ui/view/gridwin4.cxx:1397
sdr::contact::ViewObjectContact::getGridOffset() const
svx/source/sdr/contact/viewobjectcontact.cxx:463
sdr::contact::ViewObjectContact::getPrimitive2DSequence(sdr::contact::DisplayInfo const&) const
include/basegfx/tuple/b2dtuple.hxx:81
sdr::contact::ViewObjectContact::getObjectRange() const
svx/source/sdr/contact/viewobjectcontact.cxx:198
ScLOKProxyObjectContact::calculateGridOffsetForViewOjectContact()
didn't check if PageWindowCount() was non-zero.
Change-Id: I4a00b5b13a277d0805af3076150a952306908e53
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132091
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
-rw-r--r-- | sc/source/ui/view/gridwin4.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sc/source/ui/view/gridwin4.cxx b/sc/source/ui/view/gridwin4.cxx index 087f08271a5a..3baf4d0c96a3 100644 --- a/sc/source/ui/view/gridwin4.cxx +++ b/sc/source/ui/view/gridwin4.cxx @@ -1394,7 +1394,9 @@ namespace if (!pPageView) return; - SdrPageWindow* pSdrPageWindow = pPageView->GetPageWindow(0); + SdrPageWindow* pSdrPageWindow = nullptr; + if (pPageView->PageWindowCount() > 0) + pSdrPageWindow = pPageView->GetPageWindow(0); if (!pSdrPageWindow) return; |