Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#3388 closed defect (fixed)

dods driver crashes on x-flip read, 64bit OSX

Reported by: kyngchaos Owned by: pvachon
Priority: normal Milestone: 1.7.1
Component: GDAL_Raster Version: 1.7.0
Severity: normal Keywords:
Cc: pvachon


gdriver/dods autotest #5 crashes on 64bit OSX 10.6. It's fine on 32bit OSX.

I happens in GDALCopyWordsFromT():

Exception Codes: KERN_INVALID_ADDRESS at 0x0000000204800598
Crashed Thread:  0  Dispatch queue:

Thread 0 Crashed:  Dispatch queue:
0   org.gdal.gdal                 	0x00000001011d0a82 void (anonymous namespace)::GDALCopyWordsFromT<float>(float const*, int, bool, void*, GDALDataType, int, int) + 643
1   org.gdal.gdal                 	0x0000000101075707 DODSRasterBand::IReadBlock(int, int, void*) + 2845
2   org.gdal.gdal                 	0x00000001011ca2a3 GDALRasterBand::GetLockedBlockRef(int, int, int) + 279
3   org.gdal.gdal                 	0x00000001011d326e GDALRasterBand::IRasterIO(GDALRWFlag, int, int, int, int, void*, int, int, GDALDataType, int, int) + 402
4   org.gdal.gdal                 	0x00000001011f11f4 GDALChecksumImage + 283
5                      	0x0000000100522abd _wrap_Band_Checksum + 1140
6   org.python.python             	0x0000000100017173 PyObject_Call + 112

Change History (5)

comment:1 by warmerdam, 12 years ago

Cc: pvachon added
Milestone: 1.7.1

comment:2 by pvachon, 12 years ago

Owner: changed from warmerdam to pvachon
Status: newassigned

comment:3 by pvachon, 12 years ago

Resolution: fixed
Status: assignedclosed

I've fixed this one up (r18738 for trunk, r18739 for 1.7). I had never built the DODS driver, so never saw the unit test failure. Apparently it's using GDALCopyWords with a negative output offset, and since internally GDALCopyWordsT stores the offset amount in an unsigned integer, nasty things were happening.

comment:4 by kyngchaos, 12 years ago

I noticed that and was wondering about it, but figured it had something to do with the flipping. I'll have a chance to test it later this evening.

comment:5 by kyngchaos, 12 years ago

Yep, it's working now.

Note: See TracTickets for help on using tickets.