sd/source/ui/unoidl/unomodel.cxx |    5 +++++
 1 file changed, 5 insertions(+)

New commits:
commit 96c28cf36c8d221c2d2fa50c320690a48f311ba7
Author:     Miklos Vajna <vmik...@collabora.com>
AuthorDate: Mon May 19 08:32:59 2025 +0200
Commit:     Miklos Vajna <vmik...@collabora.com>
CommitDate: Mon May 19 23:20:13 2025 +0200

    sd: fix crash in SdXImpressDocument::GetViewShell()
    
    Crashreport:
    
    > SIG   Fatal signal received: SIGSEGV code: 128 for address: 0x0
    >
    > program/libsdlo.so
    >       SdXImpressDocument::GetViewShell()
    >               sd/source/ui/unoidl/unomodel.cxx:3844 (discriminator 1)
    > program/libsdlo.so
    >       SdXImpressDocument::getViewRenderState(SfxViewShell*)
    >               sd/source/ui/unoidl/unomodel.cxx:3957
    > program/libmergedlo.so
    >       doc_getCommandValues
    >               desktop/source/lib/init.cxx:6760
    
    Change-Id: I92d2f11b98709145f377a8dc0e469d6fe17ec9ca
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185507
    Reviewed-by: Miklos Vajna <vmik...@collabora.com>
    Tested-by: Jenkins

diff --git a/sd/source/ui/unoidl/unomodel.cxx b/sd/source/ui/unoidl/unomodel.cxx
index a95700942e9f..31e459c07f37 100644
--- a/sd/source/ui/unoidl/unomodel.cxx
+++ b/sd/source/ui/unoidl/unomodel.cxx
@@ -3840,6 +3840,11 @@ void SAL_CALL SdXImpressDocument::render( sal_Int32 
nRenderer, const uno::Any& r
 
 DrawViewShell* SdXImpressDocument::GetViewShell()
 {
+    if (!mpDocShell)
+    {
+        return nullptr;
+    }
+
     DrawViewShell* pViewSh = 
dynamic_cast<DrawViewShell*>(mpDocShell->GetViewShell());
     if (!pViewSh)
     {

Reply via email to