From da7d00f83492aa4188e8e19ca2907a7fb1ee963b Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Mon, 15 Aug 2022 20:44:13 +0100 Subject: [PATCH] oops bug fix --- OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs | 2 -- OpenSim/Region/PhysicsModules/ubOde/ODEScene.cs | 3 +++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs b/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs index bebbb52cbe..76dfde7385 100644 --- a/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs +++ b/OpenSim/Region/PhysicsModules/ubOde/ODECharacter.cs @@ -1872,7 +1872,6 @@ namespace OpenSim.Region.PhysicsModule.ubOde if (NewStatus) { AvatarGeomAndBodyDestroy(); - AvatarGeomAndBodyCreate(); m_parent_scene.actor_name_map[collider] = this; @@ -1882,7 +1881,6 @@ namespace OpenSim.Region.PhysicsModule.ubOde { m_parent_scene.RemoveCollisionEventReporting(this); m_parent_scene.RemoveCharacter(this); - // destroy avatar capsule and related ODE data AvatarGeomAndBodyDestroy(); } diff --git a/OpenSim/Region/PhysicsModules/ubOde/ODEScene.cs b/OpenSim/Region/PhysicsModules/ubOde/ODEScene.cs index 125bb1b8a4..d942d3fc25 100644 --- a/OpenSim/Region/PhysicsModules/ubOde/ODEScene.cs +++ b/OpenSim/Region/PhysicsModules/ubOde/ODEScene.cs @@ -1286,7 +1286,10 @@ namespace OpenSim.Region.PhysicsModule.ubOde { int last = _charactersList.Count - 1; if(chr._charsListIndex != last) + { _charactersList[chr._charsListIndex] = _charactersList[last]; + _charactersList[chr._charsListIndex]._charsListIndex = chr._charsListIndex; + } _charactersList.RemoveAt(last); chr._charsListIndex = -1; }