summaryrefslogtreecommitdiff
path: root/dbaccess/source/ui/misc/UITools.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'dbaccess/source/ui/misc/UITools.cxx')
-rw-r--r--dbaccess/source/ui/misc/UITools.cxx21
1 files changed, 12 insertions, 9 deletions
diff --git a/dbaccess/source/ui/misc/UITools.cxx b/dbaccess/source/ui/misc/UITools.cxx
index 3e026d4e5116..9f0f9bd2c85e 100644
--- a/dbaccess/source/ui/misc/UITools.cxx
+++ b/dbaccess/source/ui/misc/UITools.cxx
@@ -408,8 +408,8 @@ SQLExceptionInfo createConnection( const Reference< ::com::sun::star::beans::XP
return aInfo;
}
// -----------------------------------------------------------------------------
-Reference< XDataSource > getDataSourceByName_displayError( const ::rtl::OUString& _rDataSourceName,
- Window* _pErrorMessageParent, Reference< XMultiServiceFactory > _rxORB, bool _bDisplayError)
+Reference< XDataSource > getDataSourceByName( const ::rtl::OUString& _rDataSourceName,
+ Window* _pErrorMessageParent, Reference< XMultiServiceFactory > _rxORB, ::dbtools::SQLExceptionInfo* _pErrorInfo )
{
::comphelper::ComponentContext aContext( _rxORB );
Reference< XNameAccess > xDatabaseContext( aContext.createComponent( "com.sun.star.sdb.DatabaseContext" ), UNO_QUERY_THROW );
@@ -450,16 +450,18 @@ Reference< XDataSource > getDataSourceByName_displayError( const ::rtl::OUString
if ( xDatasource.is() )
return xDatasource;
- if ( _bDisplayError )
+ if ( aSQLError.isValid() )
{
- if ( aSQLError.isValid() )
- showError( aSQLError, _pErrorMessageParent, _rxORB );
+ if ( _pErrorInfo )
+ {
+ *_pErrorInfo = aSQLError;
+ }
else
{
- DBG_ERROR( "getDataSourceByName_displayError: not yet implemented!" );
- // by spec, we must pass this to an interaction handler ...
+ showError( aSQLError, _pErrorMessageParent, _rxORB );
}
}
+
return Reference<XDataSource>();
}
// -----------------------------------------------------------------------------
@@ -1414,14 +1416,15 @@ void fillAutoIncrementValue(const Reference<XConnection>& _xConnection,
{
_xDataSource->getPropertyValue(PROPERTY_NAME) >>= _rsDatabaseName;
}
- catch(Exception)
+ catch(const Exception& )
{
+ DBG_UNHANDLED_EXCEPTION();
}
}
::rtl::OUString sName = _rsDatabaseName;
INetURLObject aURL(sName);
if ( aURL.GetProtocol() != INET_PROT_NOT_VALID )
- sName = aURL.getBase(INetURLObject::LAST_SEGMENT,true,INetURLObject::DECODE_WITH_CHARSET);
+ sName = aURL.getBase(INetURLObject::LAST_SEGMENT,true,INetURLObject::DECODE_UNAMBIGUOUS);
return sName;
}
// -----------------------------------------------------------------------------