mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-28 00:17:30 -05:00
Merge pull request #5552 from elpaso/vector_layer_safe_cast
[bugfix] Prevent a bad crash when provider is wrong
This commit is contained in:
commit
a22e565dc2
@ -1530,12 +1530,8 @@ bool QgsVectorLayer::setDataProvider( QString const &provider )
|
||||
dataSource = uri.uri( false );
|
||||
}
|
||||
|
||||
// XXX when execution gets here.
|
||||
|
||||
//XXX - This was a dynamic cast but that kills the Windows
|
||||
// version big-time with an abnormal termination error
|
||||
delete mDataProvider;
|
||||
mDataProvider = ( QgsVectorDataProvider * )( QgsProviderRegistry::instance()->createProvider( provider, dataSource ) );
|
||||
mDataProvider = qobject_cast<QgsVectorDataProvider *>( QgsProviderRegistry::instance()->createProvider( provider, dataSource ) );
|
||||
if ( !mDataProvider )
|
||||
{
|
||||
QgsDebugMsg( " unable to get data provider" );
|
||||
|
Loading…
x
Reference in New Issue
Block a user