Ticket #1672: gdal_misc.cpp-mloskot.patch

File gdal_misc.cpp-mloskot.patch, 1.3 kB (added by mloskot, 5 months ago)

In my opinion, this function should be patched too

  • gcore/gdal_misc.cpp

    old new  
    595595                    break; 
    596596                  case GDT_Float32: 
    597597                    dfValue = ((float *) poBlock->GetDataRef())[iOffset]; 
     598                    if( CPLIsNan(dfValue) ) 
     599                        continue; 
    598600                    break; 
    599601                  case GDT_Float64: 
    600602                    dfValue = ((double *) poBlock->GetDataRef())[iOffset]; 
     603                    if( CPLIsNan(dfValue) ) 
     604                        continue; 
    601605                    break; 
    602606                  case GDT_CInt16: 
    603607                    dfValue = ((GInt16 *) poBlock->GetDataRef())[iOffset*2]; 
     
    607611                    break; 
    608612                  case GDT_CFloat32: 
    609613                    dfValue = ((float *) poBlock->GetDataRef())[iOffset*2]; 
     614                    if( CPLIsNan(dfValue) ) 
     615                        continue; 
    610616                    break; 
    611617                  case GDT_CFloat64: 
    612618                    dfValue = ((double *) poBlock->GetDataRef())[iOffset*2]; 
     619                    if( CPLIsNan(dfValue) ) 
     620                        continue; 
    613621                    break; 
    614622                  default: 
    615623                    CPLAssert( FALSE );