Skip to content
Permalink
Browse files
Also use datasource instead of filepath when ref/unref-ing and invali…
…dating.
  • Loading branch information
manisandro committed May 4, 2016
1 parent ff81b82 commit 32ea651
Showing 1 changed file with 8 additions and 8 deletions.
@@ -374,7 +374,7 @@ QgsOgrProvider::QgsOgrProvider( QString const & uri )
<< QgsVectorDataProvider::NativeType( tr( "Date & Time" ), "datetime", QVariant::DateTime );
}

QgsOgrConnPool::instance()->ref( mFilePath );
QgsOgrConnPool::instance()->ref( dataSourceUri() );
}

QgsOgrProvider::~QgsOgrProvider()
@@ -685,7 +685,7 @@ OGRwkbGeometryType QgsOgrProvider::getOgrGeomType( OGRLayerH ogrLayer )

void QgsOgrProvider::loadFields()
{
QgsOgrConnPool::instance()->invalidateConnections( filePath() );
QgsOgrConnPool::instance()->invalidateConnections( dataSourceUri() );
//the attribute fields need to be read again when the encoding changes
mAttributeFields.clear();

@@ -1276,7 +1276,7 @@ bool QgsOgrProvider::changeAttributeValues( const QgsChangedAttributesMap &attr_
{
pushError( tr( "OGR error syncing to disk: %1" ).arg( CPLGetLastErrorMsg() ) );
}
QgsOgrConnPool::instance()->invalidateConnections( filePath() );
QgsOgrConnPool::instance()->invalidateConnections( dataSourceUri() );
return true;
}

@@ -1341,7 +1341,7 @@ bool QgsOgrProvider::changeGeometryValues( const QgsGeometryMap &geometry_map )

OGR_F_Destroy( theOGRFeature );
}
QgsOgrConnPool::instance()->invalidateConnections( filePath() );
QgsOgrConnPool::instance()->invalidateConnections( dataSourceUri() );
return syncToDisc();
}

@@ -2540,7 +2540,7 @@ QByteArray QgsOgrProvider::quotedIdentifier( QByteArray field ) const

void QgsOgrProvider::forceReload()
{
QgsOgrConnPool::instance()->invalidateConnections( filePath() );
QgsOgrConnPool::instance()->invalidateConnections( dataSourceUri() );
}

QByteArray QgsOgrUtils::quotedIdentifier( QByteArray field, const QString& ogrDriverName )
@@ -2605,7 +2605,7 @@ bool QgsOgrProvider::syncToDisc()
{
shapeIndex = true;
close();
QgsOgrConnPool::instance()->invalidateConnections( mFilePath );
QgsOgrConnPool::instance()->invalidateConnections( dataSourceUri() );
QFile::remove( sbnIndexFile );
open();
}
@@ -2621,7 +2621,7 @@ bool QgsOgrProvider::syncToDisc()

mShapefileMayBeCorrupted = false;

QgsOgrConnPool::instance()->ref( mFilePath );
QgsOgrConnPool::instance()->ref( dataSourceUri() );
if ( shapeIndex )
{
return createSpatialIndex();
@@ -2671,7 +2671,7 @@ void QgsOgrProvider::recalculateFeatureCount()
OGR_L_SetSpatialFilter( ogrLayer, filter );
}

QgsOgrConnPool::instance()->invalidateConnections( filePath() );
QgsOgrConnPool::instance()->invalidateConnections( dataSourceUri() );
}

bool QgsOgrProvider::doesStrictFeatureTypeCheck() const

0 comments on commit 32ea651

Please sign in to comment.