diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 31052f1fe2..573ad84601 100755 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs @@ -6569,8 +6569,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP if(allowenvovr) { ScenePresence sp = SceneAgent as ScenePresence; - if(sp != null && sp .EnvironmentVersion > 0) - envVersion = sp.EnvironmentVersion; + if(sp != null && sp.EnvironmentVersion > 0) + envVersion = -1; else envVersion = landData.EnvironmentVersion; } diff --git a/OpenSim/Region/CoreModules/World/LightShare/EnvironmentModule.cs b/OpenSim/Region/CoreModules/World/LightShare/EnvironmentModule.cs index 63937d7b80..b93a5f086a 100644 --- a/OpenSim/Region/CoreModules/World/LightShare/EnvironmentModule.cs +++ b/OpenSim/Region/CoreModules/World/LightShare/EnvironmentModule.cs @@ -296,16 +296,15 @@ namespace OpenSim.Region.CoreModules.World.LightShare if ((vflags & 0x8000) != 0) { ScenePresence sp = isp as ScenePresence; - if(sp.Environment != null) - m_estateModule.HandleRegionInfoRequest(client); - else + ILandObject lo = m_scene.LandChannel.GetLandObject(sp.AbsolutePosition.X, sp.AbsolutePosition.Y); + if (lo != null && lo.LandData != null && lo.LandData.Environment != null) { - ILandObject lo = m_scene.LandChannel.GetLandObject(sp.AbsolutePosition.X, sp.AbsolutePosition.Y); - if (lo != null && lo.LandData != null && lo.LandData.Environment != null) - lo.SendLandUpdateToClient(client); - else + lo.SendLandUpdateToClient(client); + if (sp.Environment != null) m_estateModule.HandleRegionInfoRequest(client); } + else + m_estateModule.HandleRegionInfoRequest(client); } else if ((vflags & 0x4000) != 0) @@ -468,9 +467,7 @@ namespace OpenSim.Region.CoreModules.World.LightShare ScenePresence sp = m_scene.GetScenePresence(agentID); if(sp != null && sp.Environment != null) - { VEnv = sp.Environment; - } else if (parcelid == -1) VEnv = GetRegionEnvironment(); else