summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-11-05 16:53:46 +0000
committerCaolán McNamara <caolanm@redhat.com>2014-11-05 21:03:25 +0000
commit712d781538880d96a511d0b1323283a4112c93cc (patch)
treeff25cbc523e2c205ec6c18a6697b454d7e2769a5
parent68016b4407e3363b4ce4c54c3c653d7574283528 (diff)
coverity#706401 Uncaught exception
Change-Id: Iacbaf56a23d6f1878c5a5ec6f00db8211cb8ed62
-rw-r--r--dbaccess/source/core/dataaccess/databasedocument.cxx17
1 files changed, 16 insertions, 1 deletions
diff --git a/dbaccess/source/core/dataaccess/databasedocument.cxx b/dbaccess/source/core/dataaccess/databasedocument.cxx
index fd62f8af0712..cac2576ef5e6 100644
--- a/dbaccess/source/core/dataaccess/databasedocument.cxx
+++ b/dbaccess/source/core/dataaccess/databasedocument.cxx
@@ -45,6 +45,7 @@
#include <com/sun/star/io/XSeekable.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
#include <com/sun/star/io/XTruncate.hpp>
+#include <com/sun/star/lang/WrappedTargetRuntimeException.hpp>
#include <com/sun/star/script/provider/theMasterScriptProviderFactory.hpp>
#include <com/sun/star/sdb/DatabaseContext.hpp>
#include <com/sun/star/sdb/application/XDatabaseDocumentUI.hpp>
@@ -755,7 +756,21 @@ void SAL_CALL ODatabaseDocument::recoverFromFile( const OUString& i_SourceLocati
sal_Bool SAL_CALL ODatabaseDocument::attachResource( const OUString& _rURL, const Sequence< PropertyValue >& _rArguments ) throw (RuntimeException, std::exception)
{
DocumentGuard aGuard( *this, DocumentGuard::MethodUsedDuringInit );
- return impl_attachResource( _rURL, _rArguments, aGuard );
+ sal_Bool bRet(sal_False);
+ try
+ {
+ bRet = impl_attachResource( _rURL, _rArguments, aGuard );
+ }
+ catch( const RuntimeException& )
+ {
+ throw;
+ }
+ catch( const Exception& )
+ {
+ Any aError = ::cppu::getCaughtException();
+ throw WrappedTargetRuntimeException( OUString(), *this, aError );
+ }
+ return bRet;
}
bool ODatabaseDocument::impl_attachResource( const OUString& i_rLogicalDocumentURL,