Ticket #2504 (closed defect: fixed)

Opened 5 years ago

Last modified 5 years ago

GDALNoDataMaskBand::IReadBlock doesn't behave correctly when eWrkDT != eDataType

Reported by: rouault Owned by: rouault
Priority: normal Milestone: 1.5.3
Component: GDAL_Raster Version: 1.5.0
Severity: normal Keywords: nodata mask
Cc: warmerdam

Description

Incorrect behaviour will happen if eWrkDT != eDataType, and possibly crash if sizeof(eDataType) > sizeof(eWrkDT).

The fix is to do a RasterIO with the working data type instead of doing a ReadBlock? (that uses the natural data type).

Change History

Changed 5 years ago by rouault

  • status changed from new to closed
  • resolution set to fixed

Fixed in trunk in r15030 and in branches/1.5 in r15031

Note: See TracTickets for help on using tickets.