diff --git a/src/core/providers/gdal/qgsgdalprovider.cpp b/src/core/providers/gdal/qgsgdalprovider.cpp index da733fc7529a..20dbfdac1a90 100644 --- a/src/core/providers/gdal/qgsgdalprovider.cpp +++ b/src/core/providers/gdal/qgsgdalprovider.cpp @@ -2863,6 +2863,10 @@ QgsRasterBandStats QgsGdalProvider::bandStatistics( int bandNo, int stats, const QgsDebugMsgLevel( QStringLiteral( "STDDEV %1" ).arg( myRasterBandStats.stdDev ), 2 ); #endif } + else + { + myRasterBandStats.statsGathered = QgsRasterBandStats::Stats::None; + } mStatistics.append( myRasterBandStats ); return myRasterBandStats; diff --git a/src/core/raster/qgsrasterlayer.cpp b/src/core/raster/qgsrasterlayer.cpp index 932a49ff8c04..c37cd77c6b50 100644 --- a/src/core/raster/qgsrasterlayer.cpp +++ b/src/core/raster/qgsrasterlayer.cpp @@ -982,8 +982,8 @@ void QgsRasterLayer::computeMinMax( int band, if ( limits == QgsRasterMinMaxOrigin::MinMax ) { QgsRasterBandStats myRasterBandStats = mDataProvider->bandStatistics( band, QgsRasterBandStats::Min | QgsRasterBandStats::Max, extent, sampleSize ); - // Check if statistics were actually gathered, 0 means a failure - if ( myRasterBandStats.elementCount == 0 ) + // Check if statistics were actually gathered, None means a failure + if ( myRasterBandStats.statsGathered == QgsRasterBandStats::Stats::None ) { // Best guess we can do switch ( mDataProvider->dataType( band ) )