Index: src/core/qgsvectordataprovider.cpp =================================================================== --- src/core/qgsvectordataprovider.cpp (revisione 11104) +++ src/core/qgsvectordataprovider.cpp (copia locale) @@ -28,7 +28,7 @@ : QgsDataProvider( uri ), mCacheMinMaxDirty( TRUE ), mEncoding( QTextCodec::codecForLocale() ), - mFetchFeaturesWithoutGeom( FALSE ) + mFetchFeaturesWithoutGeom( TRUE ) { } Index: src/providers/ogr/qgsogrprovider.cpp =================================================================== --- src/providers/ogr/qgsogrprovider.cpp (revisione 11104) +++ src/providers/ogr/qgsogrprovider.cpp (copia locale) @@ -370,7 +370,7 @@ feature.setTypeName( featureTypeName ); /* fetch geometry */ - if ( mFetchGeom || mUseIntersect ) + if ( OGR_F_GetGeometryRef( fet ) != NULL && ( mFetchGeom || mUseIntersect ) ) { OGRGeometryH geom = OGR_F_GetGeometryRef( fet ); @@ -415,7 +415,14 @@ if ( fet ) { OGR_F_Destroy( fet ); - feature.setValid( true ); + if ( OGR_F_GetGeometryRef( fet ) != NULL ) + { + feature.setValid( true ); + } + else + { + feature.setValid( false ); + } return true; } else