diff options
Diffstat (limited to 'scripting')
-rw-r--r-- | scripting/source/dlgprov/dlgprov.cxx | 64 |
1 files changed, 31 insertions, 33 deletions
diff --git a/scripting/source/dlgprov/dlgprov.cxx b/scripting/source/dlgprov/dlgprov.cxx index 00899e8da5f8..df16f43ffe24 100644 --- a/scripting/source/dlgprov/dlgprov.cxx +++ b/scripting/source/dlgprov/dlgprov.cxx @@ -361,49 +361,47 @@ namespace dlgprov // get input stream provider Reference< io::XInputStreamProvider > xISP; - if ( xLibContainer.is() ) + if ( !xLibContainer.is() ) { - // load dialog library - if ( !xLibContainer->isLibraryLoaded( sLibName ) ) - xLibContainer->loadLibrary( sLibName ); + throw IllegalArgumentException( + "DialogProviderImpl::getDialog: library container not found!", + Reference< XInterface >(), 1 ); + } - // get dialog library - if ( xLibContainer->hasByName( sLibName ) ) - { - Any aElement = xLibContainer->getByName( sLibName ); - aElement >>= xDialogLib; - } + // load dialog library + if ( !xLibContainer->isLibraryLoaded( sLibName ) ) + xLibContainer->loadLibrary( sLibName ); - if ( xDialogLib.is() ) - { - // get input stream provider - if ( xDialogLib->hasByName( sDlgName ) ) - { - Any aElement = xDialogLib->getByName( sDlgName ); - aElement >>= xISP; - } + // get dialog library + if ( xLibContainer->hasByName( sLibName ) ) + { + Any aElement = xLibContainer->getByName( sLibName ); + aElement >>= xDialogLib; + } - if ( !xISP.is() ) - { - throw IllegalArgumentException( - "DialogProviderImpl::getDialogModel: dialog not found!", - Reference< XInterface >(), 1 ); - } - } - else - { - throw IllegalArgumentException( - "DialogProviderImpl::getDialogModel: library not found!", - Reference< XInterface >(), 1 ); - } + if ( !xDialogLib.is() ) + { + throw IllegalArgumentException( + "DialogProviderImpl::getDialogModel: library not found!", + Reference< XInterface >(), 1 ); } - else + + // get input stream provider + if ( xDialogLib->hasByName( sDlgName ) ) + { + Any aElement = xDialogLib->getByName( sDlgName ); + aElement >>= xISP; + } + + if ( !xISP.is() ) { throw IllegalArgumentException( - "DialogProviderImpl::getDialog: library container not found!", + "DialogProviderImpl::getDialogModel: dialog not found!", Reference< XInterface >(), 1 ); } + + if ( xISP.is() ) xInput = xISP->createInputStream(); msDialogLibName = sLibName; |