Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[GRASS] catch fatal error when opening db
  • Loading branch information
blazek committed Aug 24, 2015
1 parent c078ce5 commit d594a56
Showing 1 changed file with 12 additions and 3 deletions.
15 changes: 12 additions & 3 deletions src/providers/grass/qgsgrassprovider.cpp
Expand Up @@ -517,12 +517,21 @@ void QgsGrassProvider::loadAttributes( GLAYER &layer )
else
{
QgsDebugMsg( "Field info found -> open database" );
dbDriver *databaseDriver = db_start_driver_open_database( layer.fieldInfo->driver,
layer.fieldInfo->database );
dbDriver *databaseDriver = 0;
QString error = QString( "Cannot open database %1 by driver %2" ).arg( layer.fieldInfo->database ).arg( layer.fieldInfo->driver );
G_TRY
{
databaseDriver = db_start_driver_open_database( layer.fieldInfo->driver,
layer.fieldInfo->database );
}
G_CATCH( QgsGrass::Exception &e )
{
QgsGrass::warning( error + " : " + e.what() );
}

if ( !databaseDriver )
{
QgsDebugMsg( QString( "Cannot open database %1 by driver %2" ).arg( layer.fieldInfo->database ).arg( layer.fieldInfo->driver ) );
QgsDebugMsg( error );
}
else
{
Expand Down

0 comments on commit d594a56

Please sign in to comment.