diff options
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs | 27 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 1 |
2 files changed, 12 insertions, 16 deletions
diff --git a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs index 50105a6..8fd5df8 100644 --- a/OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs +++ b/OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs | |||
@@ -283,22 +283,19 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Simulation | |||
283 | // s.RegionInfo.RegionName, destination.RegionHandle); | 283 | // s.RegionInfo.RegionName, destination.RegionHandle); |
284 | uint size = m_scenes[destination.RegionID].RegionInfo.RegionSizeX; | 284 | uint size = m_scenes[destination.RegionID].RegionInfo.RegionSizeX; |
285 | 285 | ||
286 | if (theirversion != null) | 286 | float theirVersionNumber = 0f; |
287 | string[] versionComponents = theirversion.Split(new char[] { '/' }); | ||
288 | if (versionComponents.Length >= 2) | ||
289 | float.TryParse(versionComponents[1], out theirVersionNumber); | ||
290 | |||
291 | // Var regions here, and the requesting simulator is in an older version. | ||
292 | // We will forbide this, because it crashes the viewers | ||
293 | if (theirVersionNumber < 0.3f && size > 256) | ||
287 | { | 294 | { |
288 | float theirVersionNumber = 0f; | 295 | reason = "Destination is a variable-sized region, and source is an old simulator. Consider upgrading."; |
289 | string[] versionComponents = theirversion.Split(new char[] { '/' }); | 296 | m_log.DebugFormat("[LOCAL SIMULATION CONNECTOR]: Request to access this variable-sized region from {0} simulator was denied", theirVersionNumber); |
290 | if (versionComponents.Length >= 2) | 297 | return false; |
291 | float.TryParse(versionComponents[1], out theirVersionNumber); | 298 | |
292 | |||
293 | // Var regions here, and the requesting simulator is in an older version. | ||
294 | // We will forbide this, because it crashes the viewers | ||
295 | if (theirVersionNumber < 0.3f && size > 256) | ||
296 | { | ||
297 | reason = "Destination is a variable-sized region, and source is an old simulator. Consider upgrading."; | ||
298 | m_log.DebugFormat("[LOCAL SIMULATION CONNECTOR]: Request to access this variable-sized region from {0} simulator was denied", theirVersionNumber); | ||
299 | return false; | ||
300 | |||
301 | } | ||
302 | } | 299 | } |
303 | 300 | ||
304 | return m_scenes[destination.RegionID].QueryAccess(agentID, agentHomeURI, viaTeleport, position, out reason); | 301 | return m_scenes[destination.RegionID].QueryAccess(agentID, agentHomeURI, viaTeleport, position, out reason); |
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 4bbe68b..27929c6 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -5514,7 +5514,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
5514 | 5514 | ||
5515 | int num = m_sceneGraph.GetRootAgentCount(); | 5515 | int num = m_sceneGraph.GetRootAgentCount(); |
5516 | 5516 | ||
5517 | Console.WriteLine("{0} {1}", num, RegionInfo.RegionSettings.AgentLimit); | ||
5518 | if (num >= RegionInfo.RegionSettings.AgentLimit) | 5517 | if (num >= RegionInfo.RegionSettings.AgentLimit) |
5519 | { | 5518 | { |
5520 | if (!Permissions.IsAdministrator(agentID)) | 5519 | if (!Permissions.IsAdministrator(agentID)) |