a bit more suicidal...

0.9.1.0-post-fixes
UbitUmarov 2019-03-23 03:58:22 +00:00
parent a9aba562b1
commit 010d64dcd2
2 changed files with 21 additions and 17 deletions

View File

@ -4811,7 +4811,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
EntityUpdate update; EntityUpdate update;
bool viewerCache = m_supportViewerCache && (m_viewerHandShakeFlags & 1) != 0 && mysp.IsChildAgent; // only on child agents bool viewerCache = m_supportViewerCache && (m_viewerHandShakeFlags & 1) != 0;// && mysp.IsChildAgent; // only on child agents
bool doCulling = m_scene.ObjectsCullingByDistance; bool doCulling = m_scene.ObjectsCullingByDistance;
float cullingrange = 64.0f; float cullingrange = 64.0f;
Vector3 mypos = Vector3.Zero; Vector3 mypos = Vector3.Zero;
@ -5449,7 +5449,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
// //
} }
*/ */
public void ReprioritizeUpdates() public void ReprioritizeUpdates()
{ {
lock (m_entityUpdates.SyncRoot) lock (m_entityUpdates.SyncRoot)
m_entityUpdates.Reprioritize(UpdatePriorityHandler); m_entityUpdates.Reprioritize(UpdatePriorityHandler);
@ -5544,7 +5544,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
if(GroupsNeedFullUpdate.Count > 0) if(GroupsNeedFullUpdate.Count > 0)
{ {
bool viewerCache = m_supportViewerCache && (m_viewerHandShakeFlags & 1) != 0 && mysp.IsChildAgent; bool viewerCache = m_supportViewerCache && (m_viewerHandShakeFlags & 1) != 0;// && mysp.IsChildAgent;
foreach (SceneObjectGroup grp in GroupsNeedFullUpdate) foreach (SceneObjectGroup grp in GroupsNeedFullUpdate)
{ {
PrimUpdateFlags flags = PrimUpdateFlags.CancelKill; PrimUpdateFlags flags = PrimUpdateFlags.CancelKill;

View File

@ -2368,8 +2368,9 @@ namespace OpenSim.Region.Framework.Scenes
//m_log.DebugFormat("[CompleteMovement] openChildAgents: {0}ms", Util.EnvironmentTickCountSubtract(ts)); //m_log.DebugFormat("[CompleteMovement] openChildAgents: {0}ms", Util.EnvironmentTickCountSubtract(ts));
// send the rest of the world // send the rest of the world
if (m_teleportFlags > 0 | m_currentParcelHide) if (m_teleportFlags > 0 || m_currentParcelHide)
SendInitialDataToMe(); //SendInitialDataToMe();
SendOtherAgentsAvatarFullToMe();
// priority uses avatar position only // priority uses avatar position only
// m_reprioritizationLastPosition = AbsolutePosition; // m_reprioritizationLastPosition = AbsolutePosition;
@ -4035,8 +4036,8 @@ namespace OpenSim.Region.Framework.Scenes
else else
cacheEmpty = true; cacheEmpty = true;
if (m_teleportFlags > 0) // only doing for child for now // if (m_teleportFlags > 0) // only doing for child for now
return; // return;
lock (m_completeMovementLock) lock (m_completeMovementLock)
{ {
@ -4047,18 +4048,21 @@ namespace OpenSim.Region.Framework.Scenes
Util.FireAndForget(delegate Util.FireAndForget(delegate
{ {
Scene.SendLayerData(ControllingClient); if (m_teleportFlags <= 0)
{
Scene.SendLayerData(ControllingClient);
ILandChannel landch = m_scene.LandChannel; ILandChannel landch = m_scene.LandChannel;
if (landch != null) if (landch != null)
landch.sendClientInitialLandInfo(ControllingClient, true); landch.sendClientInitialLandInfo(ControllingClient, true);
SendOtherAgentsAvatarFullToMe();
}
// recheck to reduce timing issues // recheck to reduce timing issues
ControllingClient.CheckViewerCaps(); ControllingClient.CheckViewerCaps();
SendOtherAgentsAvatarFullToMe(); if (m_scene.ObjectsCullingByDistance)
/*
if (m_scene.ObjectsCullingByDistance && cacheCulling)
{ {
m_reprioritizationBusy = true; m_reprioritizationBusy = true;
m_reprioritizationLastPosition = AbsolutePosition; m_reprioritizationLastPosition = AbsolutePosition;
@ -4069,7 +4073,6 @@ namespace OpenSim.Region.Framework.Scenes
m_reprioritizationBusy = false; m_reprioritizationBusy = false;
return; return;
} }
*/
EntityBase[] entities = Scene.Entities.GetEntities(); EntityBase[] entities = Scene.Entities.GetEntities();
if(cacheEmpty) if(cacheEmpty)
@ -4367,18 +4370,19 @@ namespace OpenSim.Region.Framework.Scenes
if(IsDeleted || !ControllingClient.IsActive) if(IsDeleted || !ControllingClient.IsActive)
return; return;
/*
bool needsendinitial = false; bool needsendinitial = false;
lock(m_completeMovementLock) lock(m_completeMovementLock)
{ {
needsendinitial = SentInitialData; needsendinitial = SentInitialData;
} }
if(!needsendinitial) if(needsendinitial)
{ {
SendInitialDataToMe(); SendInitialDataToMe();
return; return;
} }
*/
if(m_reprioritizationBusy) if(m_reprioritizationBusy)
return; return;