diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 33dc85fb11..55fa928e73 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs @@ -5285,10 +5285,10 @@ namespace OpenSim.Region.Framework.Scenes { lock(m_parts) linknumber -= (m_parts.Count + 1); - if(linknumber >= 0) + lock (m_sittingAvatars) { - lock (m_sittingAvatars) - return linknumber > m_sittingAvatars.Count ? null : m_sittingAvatars[linknumber]; + if (linknumber >= 0 && linknumber < m_sittingAvatars.Count) + return m_sittingAvatars[linknumber]; } return null; } diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 2486f30842..9b0eeb7869 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs @@ -5704,7 +5704,7 @@ namespace OpenSim.Region.Framework.Scenes if (AnimationsNames.Count == 0) return new byte[] { 0 }; - using (MemoryStream ms = new MemoryStream()) + using (MemoryStream ms = new()) { byte[] tmp = Utils.UInt16ToBytes((ushort)Animations.Count); ms.Write(tmp, 0, 2);