diff options
author | Jan-Marek Glogowski <jan-marek.glogowski@extern.cib.de> | 2020-02-17 00:12:12 +0100 |
---|---|---|
committer | Jan-Marek Glogowski <glogow@fbihome.de> | 2020-05-31 22:21:35 +0200 |
commit | a97e344ba06b92e5f1fc96062a5ad03fb732615e (patch) | |
tree | 3ffb115e46e0131af7af64bf9092f92a7fe53487 /framework | |
parent | e3beaed3420b5f6deda1c443da1435d4ccfee022 (diff) |
Revert "tdf#88985 block app from exiting during macro execution"
This isn't needed anymore with the fixes for tdf#127205.
Reverts commit 68cf256f506d4601a2d2cf3ec2d56713afd491e6.
Change-Id: I1a7944632af8330f68d451d2c293143233039b34
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88837
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Diffstat (limited to 'framework')
-rw-r--r-- | framework/inc/services/desktop.hxx | 12 | ||||
-rw-r--r-- | framework/source/services/desktop.cxx | 23 |
2 files changed, 0 insertions, 35 deletions
diff --git a/framework/inc/services/desktop.hxx b/framework/inc/services/desktop.hxx index 1f0f7911e98f..0cf9cb355fe4 100644 --- a/framework/inc/services/desktop.hxx +++ b/framework/inc/services/desktop.hxx @@ -418,18 +418,6 @@ class Desktop final : private cppu::BaseMutex, */ css::uno::Reference< css::frame::XTerminateListener > m_xQuickLauncher; - /** special terminate listener active when a macro is executing. - * Because basic runs Application::Yield internally the application may quit - * while running inside the internal basic event loop. So all the basic - * infrastructure may be deleted while the call is executing, leading to - * a variant of crashes. So this special terminate listener will - * veto the current quit attempt, stop basic execution, which will - * cause the inner event loop to quit, and on return to the outer normal - * application event loop then resend the quit attempt. - * So these implementation must be a special terminate listener too .-( - */ - css::uno::Reference< css::frame::XTerminateListener > m_xStarBasicQuitGuard; - /** special terminate listener which loads images asynchronous for current open documents. * Because internally it uses blocking system APIs... it can't be guaranteed that * running jobs can be cancelled successfully if the corresponding document will be closed... diff --git a/framework/source/services/desktop.cxx b/framework/source/services/desktop.cxx index 260ddcb5dd43..28f5015203e3 100644 --- a/framework/source/services/desktop.cxx +++ b/framework/source/services/desktop.cxx @@ -161,7 +161,6 @@ Desktop::Desktop( const css::uno::Reference< css::uno::XComponentContext >& xCon , m_xDispatchRecorderSupplier( ) , m_xPipeTerminator ( ) , m_xQuickLauncher ( ) - , m_xStarBasicQuitGuard ( ) , m_xSWThreadManager ( ) , m_xSfxTerminator ( ) , m_xTitleNumberGenerator ( ) @@ -206,7 +205,6 @@ sal_Bool SAL_CALL Desktop::terminate() css::uno::Reference< css::frame::XTerminateListener > xPipeTerminator = m_xPipeTerminator; css::uno::Reference< css::frame::XTerminateListener > xQuickLauncher = m_xQuickLauncher; - css::uno::Reference< css::frame::XTerminateListener > xStarBasicQuitGuard = m_xStarBasicQuitGuard; css::uno::Reference< css::frame::XTerminateListener > xSWThreadManager = m_xSWThreadManager; css::uno::Reference< css::frame::XTerminateListener > xSfxTerminator = m_xSfxTerminator; @@ -257,12 +255,6 @@ sal_Bool SAL_CALL Desktop::terminate() lCalledTerminationListener.push_back( xQuickLauncher ); } - if ( xStarBasicQuitGuard.is() ) - { - xStarBasicQuitGuard->queryTermination( aEvent ); - lCalledTerminationListener.push_back( xStarBasicQuitGuard ); - } - if ( xSWThreadManager.is() ) { xSWThreadManager->queryTermination( aEvent ); @@ -308,9 +300,6 @@ sal_Bool SAL_CALL Desktop::terminate() if( bAskQuickStart && xQuickLauncher.is() ) xQuickLauncher->notifyTermination( aEvent ); - if ( xStarBasicQuitGuard.is() ) - xStarBasicQuitGuard->notifyTermination( aEvent ); - if ( xSWThreadManager.is() ) xSWThreadManager->notifyTermination( aEvent ); @@ -416,11 +405,6 @@ void SAL_CALL Desktop::addTerminateListener( const css::uno::Reference< css::fra m_xQuickLauncher = xListener; return; } - if( sImplementationName == "com.sun.star.comp.svx.StarBasicQuitGuard" ) - { - m_xStarBasicQuitGuard = xListener; - return; - } if( sImplementationName == "com.sun.star.util.comp.FinalThreadManager" ) { m_xSWThreadManager = xListener; @@ -466,12 +450,6 @@ void SAL_CALL Desktop::removeTerminateListener( const css::uno::Reference< css:: return; } - if( sImplementationName == "com.sun.star.comp.svx.StarBasicQuitGuard" ) - { - m_xStarBasicQuitGuard.clear(); - return; - } - if( sImplementationName == "com.sun.star.util.comp.FinalThreadManager" ) { m_xSWThreadManager.clear(); @@ -1105,7 +1083,6 @@ void SAL_CALL Desktop::disposing() m_xPipeTerminator.clear(); m_xQuickLauncher.clear(); - m_xStarBasicQuitGuard.clear(); m_xSWThreadManager.clear(); // we need a copy because the disposing might call the removeEventListener method |