Opened 15 years ago

Closed 15 years ago

Last modified 15 years ago

#2897 closed defect (fixed)

Closing a dataset opened with GDALOpenShared in another thread causes later corruption

Reported by: Even Rouault Owned by: Even Rouault
Priority: normal Milestone: 1.6.1
Component: GDAL_Raster Version: 1.6.0
Severity: normal Keywords:
Cc:

Description

The following sequence is currently broken :

hDS = GDALOpenShared("foo.tif", GA_ReadOnly); (done in thread T1)
GDALClose(hDS); (done in thread T2) --> doesn't remove hDS from the set of shared dataset
hDS = GDALOpenShared("foo.tif", GA_ReadOnly); (done in thread T1) --> returns previous pointer on destroy object...
GDALGetDescription(hDS); --> crash or big Valgrind warnings

Change History (3)

comment:1 by Even Rouault, 15 years ago

Resolution: fixed
Status: newclosed

Fixed in trunk (r16616) and in branches/1.6 (r16617)

comment:2 by Even Rouault, 15 years ago

Small correction in trunk (r16632) and in branches/1.6 (r16633)

comment:3 by Even Rouault, 15 years ago

Grrr. The fix introduced a regression in GDALDumpOpenDatasets(). Fixed in trunk (r16983) and in branches/1.6 (r16984)

Note: See TracTickets for help on using tickets.