diff options
-rw-r--r-- | extensions/source/update/check/updatecheckjob.cxx | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/extensions/source/update/check/updatecheckjob.cxx b/extensions/source/update/check/updatecheckjob.cxx index d61700e5f073..b9cf884d8850 100644 --- a/extensions/source/update/check/updatecheckjob.cxx +++ b/extensions/source/update/check/updatecheckjob.cxx @@ -131,11 +131,17 @@ void SAL_CALL InitUpdateCheckJobThread::run() return; } - rtl::Reference< UpdateCheck > aController( UpdateCheck::get() ); - aController->initialize( m_xParameters, m_xContext ); - - if ( m_bShowDialog ) - aController->showDialog( true ); + try { + rtl::Reference< UpdateCheck > aController( UpdateCheck::get() ); + aController->initialize( m_xParameters, m_xContext ); + + if ( m_bShowDialog ) + aController->showDialog( true ); + } catch (const uno::Exception &e) { + // fdo#64962 - don't bring the app down on some unexpected exception. + OSL_TRACE( "Caught init update exception: %s\n thread terminated.\n", + OUStringToOString(e.Message, RTL_TEXTENCODING_UTF8).getStr() ); + } } void InitUpdateCheckJobThread::setTerminating() { |