diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 3154872..4064339 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -1090,12 +1090,17 @@ namespace OpenSim.Region.Framework.Scenes | |||
1090 | { | 1090 | { |
1091 | if (PhysicsActor != null) | 1091 | if (PhysicsActor != null) |
1092 | { | 1092 | { |
1093 | m_physicsActor.OnRequestTerseUpdate -= SendTerseUpdateToAllClients; | 1093 | try |
1094 | m_physicsActor.OnOutOfBounds -= OutOfBoundsCall; | 1094 | { |
1095 | m_scene.PhysicsScene.RemoveAvatar(PhysicsActor); | 1095 | m_physicsActor.OnRequestTerseUpdate -= SendTerseUpdateToAllClients; |
1096 | m_physicsActor.UnSubscribeEvents(); | 1096 | m_physicsActor.OnOutOfBounds -= OutOfBoundsCall; |
1097 | m_physicsActor.OnCollisionUpdate -= PhysicsCollisionUpdate; | 1097 | m_physicsActor.OnCollisionUpdate -= PhysicsCollisionUpdate; |
1098 | PhysicsActor = null; | 1098 | m_scene.PhysicsScene.RemoveAvatar(PhysicsActor); |
1099 | m_physicsActor.UnSubscribeEvents(); | ||
1100 | PhysicsActor = null; | ||
1101 | } | ||
1102 | catch | ||
1103 | { } | ||
1099 | } | 1104 | } |
1100 | } | 1105 | } |
1101 | 1106 | ||