diff options
author | Tor Lillqvist <tml@collabora.com> | 2018-02-08 19:31:20 +0200 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2018-03-25 18:27:25 +0200 |
commit | 238316748ca29caf29ec69eca9b1a50ad36fa1af (patch) | |
tree | 5aae29eb41ef17c7000f3040f9a3835a2601f440 /vbahelper | |
parent | a82c57de51e8cfa06a744d9cc29cbece50443a7c (diff) |
Decrease fragility in odd use cases with no current document
Change-Id: I9966166561d4c6e577f3f7e8e04572f97a0b295e
Reviewed-on: https://gerrit.libreoffice.org/49450
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
(cherry picked from commit 73256b918119e378c762f6a3d79d04f311a075cc)
Diffstat (limited to 'vbahelper')
-rw-r--r-- | vbahelper/source/vbahelper/vbaapplicationbase.cxx | 8 | ||||
-rw-r--r-- | vbahelper/source/vbahelper/vbahelper.cxx | 8 |
2 files changed, 13 insertions, 3 deletions
diff --git a/vbahelper/source/vbahelper/vbaapplicationbase.cxx b/vbahelper/source/vbahelper/vbaapplicationbase.cxx index 60056ef40b6a..2ed78493be97 100644 --- a/vbahelper/source/vbahelper/vbaapplicationbase.cxx +++ b/vbahelper/source/vbahelper/vbaapplicationbase.cxx @@ -184,7 +184,9 @@ VbaApplicationBase::~VbaApplicationBase() sal_Bool SAL_CALL VbaApplicationBase::getScreenUpdating() { - uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW ); + uno::Reference< frame::XModel > xModel = getCurrentDocument(); + if (!xModel.is()) + return false; return !xModel->hasControllersLocked(); } @@ -238,7 +240,9 @@ VbaApplicationBase::setDisplayStatusBar(sal_Bool bDisplayStatusBar) sal_Bool SAL_CALL VbaApplicationBase::getInteractive() { - uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW ); + uno::Reference< frame::XModel > xModel = getCurrentDocument(); + if (!xModel.is()) + return false; uno::Reference< frame::XFrame > xFrame( xModel->getCurrentController()->getFrame(), uno::UNO_QUERY_THROW ); uno::Reference< awt::XWindow2 > xWindow( xFrame->getContainerWindow(), uno::UNO_QUERY_THROW ); diff --git a/vbahelper/source/vbahelper/vbahelper.cxx b/vbahelper/source/vbahelper/vbahelper.cxx index 82cd2bf197c0..0b07f2a57ba1 100644 --- a/vbahelper/source/vbahelper/vbahelper.cxx +++ b/vbahelper/source/vbahelper/vbahelper.cxx @@ -277,7 +277,13 @@ getCurrentWordDoc( const uno::Reference< uno::XComponentContext >& xContext ) } catch (const uno::Exception&) { - xModel = getThisWordDoc( xContext ); + try + { + xModel = getThisWordDoc( xContext ); + } + catch (const uno::Exception&) + { + } } return xModel; } |