Opened 16 years ago

Last modified 16 years ago

#2272 closed defect

For blocks bigger than the CacheMax GetBlockRef returns an error — at Initial Version

Reported by: ilucena Owned by: warmerdam
Priority: high Milestone: 1.6.0
Component: GDAL_Raster Version: svn-trunk
Severity: normal Keywords: INGR, CCITT4, gdalrasterblock
Cc: Even Rouault

Description

The INGR driver is producing a GetBlockRef Error when reading CCITT4 compressed images that produce a block in memory larger than the CacheMax.

That is what I found:

The comment on that line: http://trac.osgeo.org/gdal/browser/trunk/gdal/gcore/gdalrasterblock.cpp?rev=13965#L379 says "don't flush this block!" but that is exactly what is happening 7 lines after that.

I made that change and the "GetBlockRef Error" problem with INGR, CCITT4 disappear:

if (nLockCount == 0) {

if (!GDALFlushCacheBlock()) {

eErr = CE_Failure; break;

}

}

The GDALFlushCacheBlock() was added my Even in 2/3/2008. I would suggest a revision.

Regards.

Change History (0)

Note: See TracTickets for help on using tickets.