diff --git a/ChangeLog b/ChangeLog index 6604774b94d..7c66e64830d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,14 @@ QGIS Change Log -ChangeLog,v 1.186 2004/09/15 09:28:50 larsl Exp +ChangeLog,v 1.187 2004/09/20 17:20:03 larsl Exp ------------------------------------------------------------------------------ Version 0.5 'Bandit' .... development version +2004-09-20 [larsl] 0.4.0devel34 +** Fixed bug 987874 which caused QGIS to crash when showing the attribute + table for shapefile layers with features with NULL geometry + (GetGeometryRef() returns NULL) - the OGR provider now treats features + with NULL geometry as NULL features, i.e. EOF + 2004-09-15 [larsl] 0.4.0devel33 ** Fixed QgsUValMaDialogBase so the listbox doesn't take up all of the space diff --git a/configure.in b/configure.in index dd60059bec0..11085d110a8 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ dnl Process this file with autoconf to produce a configure script. -dnl configure.in,v 1.188 2004/09/15 09:28:51 larsl Exp +dnl configure.in,v 1.189 2004/09/20 17:20:04 larsl Exp @@ -26,7 +26,7 @@ dnl --------------------------------------------------------------------------- MAJOR_VERSION=0 MINOR_VERSION=4 MICRO_VERSION=0 -EXTRA_VERSION=33 +EXTRA_VERSION=34 if test $EXTRA_VERSION -eq 0; then VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION} else diff --git a/providers/ogr/qgsshapefileprovider.cpp b/providers/ogr/qgsshapefileprovider.cpp index a7b4c501c08..d078731fc72 100644 --- a/providers/ogr/qgsshapefileprovider.cpp +++ b/providers/ogr/qgsshapefileprovider.cpp @@ -193,7 +193,7 @@ bool QgsShapeFileProvider::getNextFeature(QgsFeature &f, bool fetchAttributes) if(valid){ //std::cerr << "getting next feature\n"; OGRFeature *fet = ogrLayer->GetNextFeature(); - if(fet){ + if(fet && fet->GetGeometryRef()){ OGRGeometry *geom = fet->GetGeometryRef(); // get the wkb representation @@ -247,7 +247,7 @@ QgsFeature *QgsShapeFileProvider::getNextFeature(bool fetchAttributes) if(valid){ //std::cerr << "getting next feature\n"; OGRFeature *fet = ogrLayer->GetNextFeature(); - if(fet){ + if(fet && fet->GetGeometryRef()){ OGRGeometry *geom = fet->GetGeometryRef(); // get the wkb representation @@ -292,7 +292,7 @@ QgsFeature *QgsShapeFileProvider::getNextFeature(std::list& attlist) if(valid) { OGRFeature *fet = ogrLayer->GetNextFeature(); - if(fet) + if(fet && fet->GetGeometryRef()) { OGRGeometry *geom = fet->GetGeometryRef(); // get the wkb representation