Quote:the cause
The error was caused by a read/write lock that was unlocked one too many times. It happened when determining the star density somewhere in a galaxy, the first time the function was called.
The error was sort of like this...
Code:
float Galaxy::StarDensity(where)
{
rwLock.LockForRead
if(dataNotLoaded)
{
rwLock.Unlock
rwLock.LockForWrite
LoadData
rwLock.Unlock
}
starDensity = CalculateStarDensityUsingData(where)
rwLock.Unlock
return starDensity
}