sd/source/ui/func/fuarea.cxx |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit 744439e73038ea5bdbdd18b10e0e90c22bb9928c
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Thu Jun 30 16:28:47 2022 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Fri Jul 1 11:11:17 2022 +0200

    tdf#149787 capture a copy of mpViewShell and mpView
    
    so the callback can outlive the FuArea
    
    Change-Id: I392ffa46b6f13795faef7284c1cae74428655b5f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136694
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/sd/source/ui/func/fuarea.cxx b/sd/source/ui/func/fuarea.cxx
index e75ab54a8f9a..345b2c70b6dc 100644
--- a/sd/source/ui/func/fuarea.cxx
+++ b/sd/source/ui/func/fuarea.cxx
@@ -57,10 +57,10 @@ void FuArea::DoExecute( SfxRequest& rReq )
     SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create();
     VclPtr<AbstractSvxAreaTabDialog> 
pDlg(pFact->CreateSvxAreaTabDialog(mpViewShell->GetFrameWeld(), &aNewAttr, 
mpDoc, true));
 
-    pDlg->StartExecuteAsync([pDlg, this](sal_Int32 nResult){
+    pDlg->StartExecuteAsync([pDlg, pView = this->mpView, pViewShell = 
this->mpViewShell](sal_Int32 nResult){
         if (nResult == RET_OK)
         {
-            mpView->SetAttributes (*(pDlg->GetOutputItemSet ()));
+            pView->SetAttributes (*(pDlg->GetOutputItemSet ()));
 
             // attributes changed, update Listboxes in Objectbars
             static const sal_uInt16 SidArray[] = {
@@ -73,11 +73,11 @@ void FuArea::DoExecute( SfxRequest& rReq )
                 SID_ATTR_FILL_FLOATTRANSPARENCE,
                 0 };
 
-            mpViewShell->GetViewFrame()->GetBindings().Invalidate( SidArray );
+            pViewShell->GetViewFrame()->GetBindings().Invalidate( SidArray );
         }
 
         // deferred until the dialog ends
-        mpViewShell->Cancel();
+        pViewShell->Cancel();
 
         pDlg->disposeOnce();
     });

Reply via email to