aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Prioritizer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Prioritizer.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Prioritizer.cs8
1 files changed, 8 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Prioritizer.cs b/OpenSim/Region/Framework/Scenes/Prioritizer.cs
index 4595a29..0f35894 100644
--- a/OpenSim/Region/Framework/Scenes/Prioritizer.cs
+++ b/OpenSim/Region/Framework/Scenes/Prioritizer.cs
@@ -158,6 +158,8 @@ namespace OpenSim.Region.Framework.Scenes
158 158
159 private uint GetPriorityByBestAvatarResponsiveness(IClientAPI client, ISceneEntity entity) 159 private uint GetPriorityByBestAvatarResponsiveness(IClientAPI client, ISceneEntity entity)
160 { 160 {
161 if (entity == null) return 0;
162
161 uint pqueue = ComputeDistancePriority(client,entity,true); 163 uint pqueue = ComputeDistancePriority(client,entity,true);
162 164
163 ScenePresence presence = m_scene.GetScenePresence(client.AgentId); 165 ScenePresence presence = m_scene.GetScenePresence(client.AgentId);
@@ -188,6 +190,12 @@ namespace OpenSim.Region.Framework.Scenes
188 190
189 private uint ComputeDistancePriority(IClientAPI client, ISceneEntity entity, bool useFrontBack) 191 private uint ComputeDistancePriority(IClientAPI client, ISceneEntity entity, bool useFrontBack)
190 { 192 {
193 // If this is an update for our own avatar give it the highest priority
194 if (client.AgentId == entity.UUID)
195 return 0;
196 if (entity == null)
197 return 0;
198
191 // Get this agent's position 199 // Get this agent's position
192 ScenePresence presence = m_scene.GetScenePresence(client.AgentId); 200 ScenePresence presence = m_scene.GetScenePresence(client.AgentId);
193 if (presence == null) 201 if (presence == null)