Skip to content

Commit 814ae4c

Browse files
committed
fix data retrieval in attribute table from geometryless spatialite tables
1 parent 52ac084 commit 814ae4c

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

src/gui/attributetable/qgsattributetablemodel.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -646,4 +646,6 @@ void QgsAttributeTableModel::prefetchColumnData( int column )
646646
void QgsAttributeTableModel::setRequest( const QgsFeatureRequest& request )
647647
{
648648
mFeatureRequest = request;
649+
if( layer() && !layer()->hasGeometryType() )
650+
mFeatureRequest.setFlags( mFeatureRequest.flags() | QgsFeatureRequest::NoGeometry );
649651
}

src/providers/spatialite/qgsspatialitefeatureiterator.cpp

+3
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,10 @@ bool QgsSpatiaLiteFeatureIterator::close()
145145
bool QgsSpatiaLiteFeatureIterator::prepareStatement( QString whereClause )
146146
{
147147
if ( !( mRequest.flags() & QgsFeatureRequest::NoGeometry ) && P->mGeometryColumn.isNull() )
148+
{
149+
QgsMessageLog::logMessage( QObject::tr( "Trying to fetch geometry on a layer without geometry." ), QObject::tr( "SpatiaLite" ) );
148150
return false;
151+
}
149152

150153
try
151154
{

0 commit comments

Comments
 (0)