diff options
-rw-r--r-- | vcl/source/app/svapp.cxx | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx index 40ff79b7d70f..f4d2080849de 100644 --- a/vcl/source/app/svapp.cxx +++ b/vcl/source/app/svapp.cxx @@ -1438,9 +1438,11 @@ const LocaleDataWrapper& Application::GetAppLocaleDataWrapper() void Application::EnableHeadlessMode( bool dialogsAreFatal ) { - assert(GetDialogCancelMode() == DialogCancelMode::Off); - SetDialogCancelMode( - dialogsAreFatal ? DialogCancelMode::Fatal : DialogCancelMode::Silent ); + DialogCancelMode eNewMode = dialogsAreFatal ? DialogCancelMode::Fatal : DialogCancelMode::Silent; + DialogCancelMode eOldMode = GetDialogCancelMode(); + assert(eOldMode == DialogCancelMode::Off || GetDialogCancelMode() == eNewMode); + if (eOldMode != eNewMode) + SetDialogCancelMode( eNewMode ); } bool Application::IsHeadlessModeEnabled() |