aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/AgentCircuitData.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Framework/AgentCircuitData.cs24
1 files changed, 15 insertions, 9 deletions
diff --git a/OpenSim/Framework/AgentCircuitData.cs b/OpenSim/Framework/AgentCircuitData.cs
index 9c9b4b0..353e5bf 100644
--- a/OpenSim/Framework/AgentCircuitData.cs
+++ b/OpenSim/Framework/AgentCircuitData.cs
@@ -149,17 +149,19 @@ namespace OpenSim.Framework
149 args["base_folder"] = OSD.FromUUID(BaseFolder); 149 args["base_folder"] = OSD.FromUUID(BaseFolder);
150 args["caps_path"] = OSD.FromString(CapsPath); 150 args["caps_path"] = OSD.FromString(CapsPath);
151 151
152 OSDArray childrenSeeds = new OSDArray(ChildrenCapSeeds.Count); 152 if (ChildrenCapSeeds != null)
153 foreach (KeyValuePair<ulong, string> kvp in ChildrenCapSeeds)
154 { 153 {
155 OSDMap pair = new OSDMap(); 154 OSDArray childrenSeeds = new OSDArray(ChildrenCapSeeds.Count);
156 pair["handle"] = OSD.FromString(kvp.Key.ToString()); 155 foreach (KeyValuePair<ulong, string> kvp in ChildrenCapSeeds)
157 pair["seed"] = OSD.FromString(kvp.Value); 156 {
158 childrenSeeds.Add(pair); 157 OSDMap pair = new OSDMap();
158 pair["handle"] = OSD.FromString(kvp.Key.ToString());
159 pair["seed"] = OSD.FromString(kvp.Value);
160 childrenSeeds.Add(pair);
161 }
162 if (ChildrenCapSeeds.Count > 0)
163 args["children_seeds"] = childrenSeeds;
159 } 164 }
160 if (ChildrenCapSeeds.Count > 0)
161 args["children_seeds"] = childrenSeeds;
162
163 args["child"] = OSD.FromBoolean(child); 165 args["child"] = OSD.FromBoolean(child);
164 args["circuit_code"] = OSD.FromString(circuitcode.ToString()); 166 args["circuit_code"] = OSD.FromString(circuitcode.ToString());
165 args["first_name"] = OSD.FromString(firstname); 167 args["first_name"] = OSD.FromString(firstname);
@@ -167,6 +169,7 @@ namespace OpenSim.Framework
167 args["inventory_folder"] = OSD.FromUUID(InventoryFolder); 169 args["inventory_folder"] = OSD.FromUUID(InventoryFolder);
168 args["secure_session_id"] = OSD.FromUUID(SecureSessionID); 170 args["secure_session_id"] = OSD.FromUUID(SecureSessionID);
169 args["session_id"] = OSD.FromUUID(SessionID); 171 args["session_id"] = OSD.FromUUID(SessionID);
172
170 args["service_session_id"] = OSD.FromString(ServiceSessionID); 173 args["service_session_id"] = OSD.FromString(ServiceSessionID);
171 args["start_pos"] = OSD.FromString(startpos.ToString()); 174 args["start_pos"] = OSD.FromString(startpos.ToString());
172 args["appearance_serial"] = OSD.FromInteger(Appearance.Serial); 175 args["appearance_serial"] = OSD.FromInteger(Appearance.Serial);
@@ -250,6 +253,8 @@ namespace OpenSim.Framework
250 } 253 }
251 } 254 }
252 } 255 }
256 else
257 ChildrenCapSeeds = new Dictionary<ulong, string>();
253 258
254 if (args["child"] != null) 259 if (args["child"] != null)
255 child = args["child"].AsBoolean(); 260 child = args["child"].AsBoolean();
@@ -267,6 +272,7 @@ namespace OpenSim.Framework
267 SessionID = args["session_id"].AsUUID(); 272 SessionID = args["session_id"].AsUUID();
268 if (args["service_session_id"] != null) 273 if (args["service_session_id"] != null)
269 ServiceSessionID = args["service_session_id"].AsString(); 274 ServiceSessionID = args["service_session_id"].AsString();
275
270 if (args["start_pos"] != null) 276 if (args["start_pos"] != null)
271 Vector3.TryParse(args["start_pos"].AsString(), out startpos); 277 Vector3.TryParse(args["start_pos"].AsString(), out startpos);
272 278