From 9286c2cf1fe5c91e8d7136308114fc9ab4b3e9eb Mon Sep 17 00:00:00 2001 From: Jan-Marek Glogowski Date: Tue, 23 Jul 2019 13:48:47 +0200 Subject: tdf#126597 don't use modeless dialog for senddoc.exe There is already a large comment in initAttachmentList about problems with MAPI_DIALOG_MODELESS. Using MAPI_DIALOG_MODELESS with Outlook 2016 and multiple attachments sometimes produces a MAPI_E_FAILURE, but most times it crashes for me. And it's not a problem with the removed temporary files, as uncommenting that shows the same problem. And there seems to be many more problems: https://social.msdn.microsoft.com/Forums/en-US/5d8fece6-9d93-490c-9331-625c17e3291d/mapisendmailhelper-and-mapidialogmodeless But actually I don't see any blocking of LO, if I switch to using MAPI_DIALOG, as senddoc.exe already runs in the background. So this switches MAPI_DIALOG_MODELESS to MAPI_DIALOG. This reverts commit 5874c76371562c3e2d8564b1fb04df1997091d27 ("tdf#116074: Use modeless dialogs with supporting mailers"). Change-Id: Ie0f8f22196d1a174dfeada2bc4aabb1717ee16a7 Reviewed-on: https://gerrit.libreoffice.org/76155 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski (cherry picked from commit e79f61340405dcc75f3fe41f727dea4ba4202c2e) Reviewed-on: https://gerrit.libreoffice.org/76615 Reviewed-by: Thorsten Behrens Tested-by: Thorsten Behrens --- shell/source/win32/simplemail/senddoc.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'shell') diff --git a/shell/source/win32/simplemail/senddoc.cxx b/shell/source/win32/simplemail/senddoc.cxx index 636a0d862f4e..4b8e09f48ccf 100644 --- a/shell/source/win32/simplemail/senddoc.cxx +++ b/shell/source/win32/simplemail/senddoc.cxx @@ -207,8 +207,9 @@ void initParameter(int argc, wchar_t* argv[]) if (_wcsicmp(argv[i], L"--mapi-dialog") == 0) { - // Outlook 2013+; for earlier versions this equals to MAPI_DIALOG - gMapiFlags |= MAPI_DIALOG_MODELESS; + // MAPI_DIALOG_MODELESS has many problems and crashes Outlook 2016. + // see the commit message for a lengthy description. + gMapiFlags |= MAPI_DIALOG; } else if (_wcsicmp(argv[i], L"--mapi-logon-ui") == 0) { -- cgit