diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-08-13 15:48:16 +0100 |
---|---|---|
committer | Michael Stahl <michael.stahl@cib.de> | 2020-08-17 11:42:55 +0200 |
commit | 88aa305d2fdb76b8cf1bcd589c698ae5167796e1 (patch) | |
tree | 659e547ed98e616d1f7b5871a6d19f4deeec593e | |
parent | 7e40584e8945ee555f8ad4584c5b2c95a8c6dde6 (diff) |
tdf#134439 honor FN_PARAM_PAM arguments
which was dropped by
commit bba8e5aa6d1968e5279b3fe368c0f81145513d04
Date: Thu Mar 1 21:00:24 2018 +0100
tdf#116070: Use a valid PaM when confirming the dialog.
when fixing
commit 34527cec54ca634b831cfa5ac1098c4046818ac3
Date: Tue Jan 16 18:54:19 2018 +0100
lokdialog: Convert the Format -> Paragraph... dialog to async exec.
so, go back to using pPaM instead of rWrtSh.GetCursor but make a copy
of pPaM to avoid the crash of tdf#116070
Change-Id: I0aaaf5173c6be47dd306b77eacbb07d0e1c4eaf1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100528
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
-rw-r--r-- | sw/source/uibase/shells/textsh1.cxx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sw/source/uibase/shells/textsh1.cxx b/sw/source/uibase/shells/textsh1.cxx index 9ed8ec10c807..3907f2611fac 100644 --- a/sw/source/uibase/shells/textsh1.cxx +++ b/sw/source/uibase/shells/textsh1.cxx @@ -1076,7 +1076,8 @@ void SwTextShell::Execute(SfxRequest &rReq) std::shared_ptr<SfxRequest> pRequest(new SfxRequest(rReq)); rReq.Ignore(); // the 'old' request is not relevant any more - pDlg->StartExecuteAsync([pDlg, &rWrtSh, pRequest, nDefDist](sal_Int32 nResult){ + auto xPaM(std::make_shared<SwPaM>(*pPaM, nullptr)); // tdf#134439 make a copy to use at later apply + pDlg->StartExecuteAsync([pDlg, &rWrtSh, pRequest, nDefDist, xPaM](sal_Int32 nResult){ if (nResult == RET_OK) { // Apply defaults if necessary. @@ -1106,7 +1107,7 @@ void SwTextShell::Execute(SfxRequest &rReq) pSet->Put(SfxStringItem(FN_DROP_CHAR_STYLE_NAME, sCharStyleName)); } - sw_ParagraphDialogResult(pSet, rWrtSh, *pRequest, rWrtSh.GetCursor()); + sw_ParagraphDialogResult(pSet, rWrtSh, *pRequest, xPaM.get()); } pDlg->disposeOnce(); }); |