* Re-applied r7223

0.6.0-stable
lbsa71 2008-11-13 13:32:15 +00:00
parent e762d9b612
commit f888656bca
1 changed files with 7 additions and 1 deletions

View File

@ -163,6 +163,8 @@ namespace OpenSim.Region.Environment.Scenes
private Thread HeartbeatThread; private Thread HeartbeatThread;
private volatile bool shuttingdown = false; private volatile bool shuttingdown = false;
private object m_deleting_scene_object = new object();
#endregion #endregion
#region Properties #region Properties
@ -1823,7 +1825,11 @@ namespace OpenSim.Region.Environment.Scenes
{ {
//SceneObjectPart rootPart = group.GetChildPart(group.UUID); //SceneObjectPart rootPart = group.GetChildPart(group.UUID);
// Serialise calls to RemoveScriptInstances to avoid
// deadlocking on m_parts inside SceneObjectGroup
lock (m_deleting_scene_object) {
group.RemoveScriptInstances(); group.RemoveScriptInstances();
}
foreach (SceneObjectPart part in group.Children.Values) foreach (SceneObjectPart part in group.Children.Values)
{ {