Author: damjan
Date: Sun Oct 16 16:32:08 2016
New Revision: 1765170

URL: http://svn.apache.org/viewvc?rev=1765170&view=rev
Log:
#i127165# Clicking "No" in Java dialog causes abnormal exit on FreeBSD

XSingleComponentFactory::createInstanceWithArgumentsAndContext()
throws an Exception, not a RuntimeException. This was causing
an abort on FreeBSD when "No" is clicked in the Java dialog,
as JavaComponentLoader::activate() throws a
CannotActivateFactoryException which is a subclass of Exception
but not RuntimeException, and the scripting ProviderCache wrongly
catches only RuntimeException. The missed CannotActivateFactoryException
was going to unexpected(), which calls abort()...

Patch by: me


Modified:
    openoffice/trunk/main/scripting/source/provider/ProviderCache.cxx

Modified: openoffice/trunk/main/scripting/source/provider/ProviderCache.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/scripting/source/provider/ProviderCache.cxx?rev=1765170&r1=1765169&r2=1765170&view=diff
==============================================================================
--- openoffice/trunk/main/scripting/source/provider/ProviderCache.cxx (original)
+++ openoffice/trunk/main/scripting/source/provider/ProviderCache.cxx Sun Oct 
16 16:32:08 2016
@@ -200,7 +200,7 @@ ProviderCache::createProvider( ProviderD
         details.provider.set(
             details.factory->createInstanceWithArgumentsAndContext( m_Sctx, 
m_xContext ), UNO_QUERY_THROW );
     }
-    catch ( RuntimeException& e )
+    catch ( Exception& e )
     {
         ::rtl::OUString temp = 
::rtl::OUString::createFromAscii("ProviderCache::createProvider() Error 
creating provider from factory!!!");
         throw RuntimeException( temp.concat( e.Message ), Reference< 
XInterface >() );


Reply via email to