Opened 8 years ago

Closed 8 years ago

#5229 closed defect (duplicate)

CleanupESRIDatumMappingTable: hDatumMappingMutex needs to be reset to NULL on exit of method

Reported by: damiandixon Owned by: warmerdam
Priority: normal Milestone:
Component: default Version: 1.10.0
Severity: normal Keywords:
Cc:

Description (last modified by damiandixon)

In the method CleanupESRIDatumMappingTable() (file ogr\ogr_srs_esri.cpp) the variable hDatumMappingMutex needs to be reset to NULL after it has been destroyed.

CPLDestroyMutex(hDatumMappingMutex);

hDatumMappingMutex = NULL; Add this line

The issue is if you call

GDALAllRegister()

then call

GDALDestroyDriverManager()

You can not call GDALAllRegister() again because the variable is now in an undefined state. On Windows this causes an infinite loop.

Change History (2)

comment:1 Changed 8 years ago by damiandixon

Description: modified (diff)

comment:2 Changed 8 years ago by Even Rouault

Resolution: duplicate
Status: newclosed

Duplicate of #5090

Note: See TracTickets for help on using tickets.