[QGIS Commit] r8693 - trunk/qgis/src/core/raster
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Mon Jun 30 10:36:54 EDT 2008
Author: warmerdam
Date: 2008-06-30 10:36:54 -0400 (Mon, 30 Jun 2008)
New Revision: 8693
Modified:
trunk/qgis/src/core/raster/qgsrasterlayer.cpp
Log:
do not accept band-less dataset as valid (#1040)
Modified: trunk/qgis/src/core/raster/qgsrasterlayer.cpp
===================================================================
--- trunk/qgis/src/core/raster/qgsrasterlayer.cpp 2008-06-30 13:09:41 UTC (rev 8692)
+++ trunk/qgis/src/core/raster/qgsrasterlayer.cpp 2008-06-30 14:36:54 UTC (rev 8693)
@@ -267,36 +267,20 @@
{
return false;
}
+ else if( GDALGetRasterCount( myDataset ) == 0 )
+ {
+ GDALClose( myDataset );
+ myDataset = NULL;
+ return false;
+ }
else
{
GDALClose(myDataset);
return true;
}
-
- /*
- * This way is no longer a good idea because it does not
- * cater for filetypes such as grass rasters that dont
- * have a predictable file extension.
- *
- QString name = theFileNameQString.toLower();
- return (name.endsWith(".adf") ||
- name.endsWith(".asc") ||
- name.endsWith(".grd") ||
- name.endsWith(".img") ||
- name.endsWith(".tif") ||
- name.endsWith(".png") ||
- name.endsWith(".jpg") ||
- name.endsWith(".dem") ||
- name.endsWith(".ddf")) ||
- name.endsWith(".dt0");
-
-*/
}
-
-
-
//////////////////////////////////////////////////////////
//
// Non Static methods now....
@@ -421,6 +405,16 @@
//check f this file has pyramids
GDALRasterBandH myGDALBand = GDALGetRasterBand( mGdalDataset, 1 ); //just use the first band
+ if (myGDALBand == NULL)
+ {
+ GDALDereferenceDataset(mGdalBaseDataset);
+ mGdalBaseDataset = NULL;
+
+ GDALClose(mGdalDataset);
+ mGdalDataset = NULL;
+ mValid = FALSE;
+ return false;
+ }
if( GDALGetOverviewCount(myGDALBand) > 0 )
{
hasPyramidsFlag=true;
More information about the QGIS-commit
mailing list