[QGIS Commit] r15388 - trunk/qgis/src/providers/ogr

svn_qgis at osgeo.org svn_qgis at osgeo.org
Tue Mar 8 03:10:37 EST 2011


Author: mhugent
Date: 2011-03-08 00:10:37 -0800 (Tue, 08 Mar 2011)
New Revision: 15388

Modified:
   trunk/qgis/src/providers/ogr/qgsogrprovider.cpp
Log:
Saver attribute map handling (no insertion of additional entry if a column does not exist)

Modified: trunk/qgis/src/providers/ogr/qgsogrprovider.cpp
===================================================================
--- trunk/qgis/src/providers/ogr/qgsogrprovider.cpp	2011-03-08 07:43:06 UTC (rev 15387)
+++ trunk/qgis/src/providers/ogr/qgsogrprovider.cpp	2011-03-08 08:10:37 UTC (rev 15388)
@@ -1902,7 +1902,13 @@
 
 QVariant QgsOgrProvider::minimumValue( int index )
 {
-  QgsField fld = mAttributeFields[index];
+  QgsFieldMap::const_iterator attIt = mAttributeFields.find( index );
+  if ( attIt == mAttributeFields.constEnd() )
+  {
+    return QVariant();
+  }
+  const QgsField& fld = attIt.value();
+
   QString theLayerName = OGR_FD_GetName( OGR_L_GetLayerDefn( ogrLayer ) );
 
   QString sql = QString( "SELECT MIN(%1) FROM %2" )
@@ -1936,7 +1942,13 @@
 
 QVariant QgsOgrProvider::maximumValue( int index )
 {
-  QgsField fld = mAttributeFields[index];
+  QgsFieldMap::const_iterator attIt = mAttributeFields.find( index );
+  if ( attIt == mAttributeFields.constEnd() )
+  {
+    return QVariant();
+  }
+  const QgsField& fld = mAttributeFields[index];
+
   QString theLayerName = OGR_FD_GetName( OGR_L_GetLayerDefn( ogrLayer ) );
 
   QString sql = QString( "SELECT MAX(%1) FROM %2" )



More information about the QGIS-commit mailing list