* Found the land bug, yay

ThreadPoolClientBranch
Teravus Ovares 2008-02-20 20:07:12 +00:00
parent f3190810d3
commit 740ce20d9d
3 changed files with 18 additions and 5 deletions

View File

@ -43,6 +43,7 @@ Patches
* alex_carnell * alex_carnell
* webmage (International Business Machines Corp.) * webmage (International Business Machines Corp.)
* jimbo2120 (International Business Machines Corp.) * jimbo2120 (International Business Machines Corp.)
* brianw/Sir_Ahzz
LSL Devs LSL Devs

View File

@ -576,7 +576,7 @@ namespace OpenSim.Region.Environment.LandManagement
Land currentParcel = null; Land currentParcel = null;
try try
{ {
getLandObject(start_x + x, start_y + y); currentParcel = getLandObject(start_x + x, start_y + y);
} }
catch (Exception) catch (Exception)
{ {

View File

@ -136,9 +136,13 @@ namespace OpenSim.Region.Physics.Manager
// a race condition if the last subscriber unsubscribes // a race condition if the last subscriber unsubscribes
// immediately after the null check and before the event is raised. // immediately after the null check and before the event is raised.
RequestTerseUpdate handler = OnRequestTerseUpdate; RequestTerseUpdate handler = OnRequestTerseUpdate;
if (handler != null) if (handler != null)
{ {
handler(); lock (handler)
{
handler();
}
} }
} }
@ -150,17 +154,25 @@ namespace OpenSim.Region.Physics.Manager
OutOfBounds handler = OnOutOfBounds; OutOfBounds handler = OnOutOfBounds;
if (handler != null) if (handler != null)
{ {
handler(pos); lock (handler)
{
handler(pos);
}
} }
} }
public virtual void SendCollisionUpdate(EventArgs e) public virtual void SendCollisionUpdate(EventArgs e)
{ {
CollisionUpdate handler = OnCollisionUpdate; CollisionUpdate handler = OnCollisionUpdate;
if (handler != null) if (handler != null)
{ {
handler(e); lock (handler)
{
handler(e);
}
} }
} }