From b0e37303df56472fdc7782b977326c2391fdab07 Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Fri, 24 Nov 2017 13:43:03 +0000 Subject: tdf#114025 - avoid deadlock between x11 clipboard and the lock dialog. Change-Id: I06e66f59531e7ff6a2e0bf874ebcf2a882d89b63 Reviewed-on: https://gerrit.libreoffice.org/45228 Tested-by: Jenkins Reviewed-by: Michael Meeks --- vcl/source/window/dialog.cxx | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'vcl/source') diff --git a/vcl/source/window/dialog.cxx b/vcl/source/window/dialog.cxx index 4db7c9674a83..a55dc52705a4 100644 --- a/vcl/source/window/dialog.cxx +++ b/vcl/source/window/dialog.cxx @@ -1063,13 +1063,15 @@ short Dialog::Execute() return 0; VclPtr xWindow = this; - - css::uno::Reference< css::uno::XComponentContext > xContext( + { + SolarMutexReleaser aReleaser; // tdf#114025 + css::uno::Reference< css::uno::XComponentContext > xContext( comphelper::getProcessComponentContext() ); - css::uno::Reference xEventBroadcaster(css::frame::theGlobalEventBroadcaster::get(xContext), css::uno::UNO_QUERY_THROW); - css::document::DocumentEvent aObject; - aObject.EventName = "DialogExecute"; - xEventBroadcaster->documentEventOccured(aObject); + css::uno::Reference xEventBroadcaster(css::frame::theGlobalEventBroadcaster::get(xContext), css::uno::UNO_QUERY_THROW); + css::document::DocumentEvent aObject; + aObject.EventName = "DialogExecute"; + xEventBroadcaster->documentEventOccured(aObject); + } UITestLogger::getInstance().log("DialogExecute"); // Yield util EndDialog is called or dialog gets destroyed // (the latter should not happen, but better safe than sorry -- cgit v1.2.3