diff options
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs b/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs index f380873..7cbd361 100644 --- a/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs +++ b/OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs | |||
@@ -103,16 +103,31 @@ namespace OpenSim.Services.Connectors.Simulation | |||
103 | args["teleport_flags"] = OSD.FromString(flags.ToString()); | 103 | args["teleport_flags"] = OSD.FromString(flags.ToString()); |
104 | 104 | ||
105 | OSDMap result = WebUtil.PostToServiceCompressed(uri, args, 30000); | 105 | OSDMap result = WebUtil.PostToServiceCompressed(uri, args, 30000); |
106 | if (result["Success"].AsBoolean()) | 106 | bool success = result["success"].AsBoolean(); |
107 | return true; | 107 | if (success && result.ContainsKey("_Result")) |
108 | 108 | { | |
109 | OSDMap data = (OSDMap)result["_Result"]; | ||
110 | |||
111 | reason = data["reason"].AsString(); | ||
112 | success = data["success"].AsBoolean(); | ||
113 | return success; | ||
114 | } | ||
115 | |||
116 | // Try the old version, uncompressed | ||
109 | result = WebUtil.PostToService(uri, args, 30000); | 117 | result = WebUtil.PostToService(uri, args, 30000); |
110 | 118 | ||
111 | if (result["Success"].AsBoolean()) | 119 | if (result["Success"].AsBoolean()) |
112 | { | 120 | { |
113 | m_log.WarnFormat( | 121 | if (result.ContainsKey("_Result")) |
114 | "[REMOTE SIMULATION CONNECTOR]: Remote simulator {0} did not accept compressed transfer, suggest updating it.", destination.RegionName); | 122 | { |
115 | return true; | 123 | OSDMap data = (OSDMap)result["_Result"]; |
124 | |||
125 | reason = data["reason"].AsString(); | ||
126 | success = data["success"].AsBoolean(); | ||
127 | m_log.WarnFormat( | ||
128 | "[REMOTE SIMULATION CONNECTOR]: Remote simulator {0} did not accept compressed transfer, suggest updating it.", destination.RegionName); | ||
129 | return success; | ||
130 | } | ||
116 | } | 131 | } |
117 | 132 | ||
118 | m_log.WarnFormat( | 133 | m_log.WarnFormat( |