From 6d22429329d3c1f5528d8d5ec44dbd34b18455a7 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sat, 11 Mar 2023 17:38:06 +0000 Subject: [PATCH] fix bounds check in GetLinkSitingAvatar --- OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs | 6 +++--- OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) 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);