hopefully resolve mantis issue #10 by locking correcty around terrain methods

afrisby
Sean Dague 2007-11-19 15:07:04 +00:00
parent 34fa2a4db4
commit 2fdca28dd4
1 changed files with 58 additions and 54 deletions

View File

@ -262,6 +262,7 @@ namespace OpenSim.DataStore.MonoSqlite
public void StoreTerrain(double[,] ter, LLUUID regionID) public void StoreTerrain(double[,] ter, LLUUID regionID)
{ {
lock (ds) {
int revision = Util.UnixTimeSinceEpoch(); int revision = Util.UnixTimeSinceEpoch();
// the following is an work around for .NET. The perf // the following is an work around for .NET. The perf
@ -281,9 +282,11 @@ namespace OpenSim.DataStore.MonoSqlite
} }
conn.Close(); conn.Close();
} }
}
public double[,] LoadTerrain(LLUUID regionID) public double[,] LoadTerrain(LLUUID regionID)
{ {
lock (ds) {
double[,] terret = new double[256,256]; double[,] terret = new double[256,256];
terret.Initialize(); terret.Initialize();
// the following is an work around for .NET. The perf // the following is an work around for .NET. The perf
@ -327,6 +330,7 @@ namespace OpenSim.DataStore.MonoSqlite
conn.Close(); conn.Close();
return terret; return terret;
} }
}
public void RemoveLandObject(uint id) public void RemoveLandObject(uint id)
{ {