aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Server
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Server')
-rw-r--r--OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs16
1 files changed, 13 insertions, 3 deletions
diff --git a/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs b/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs
index 2022d8a..72a4aea 100644
--- a/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs
+++ b/OpenSim/Server/Handlers/Hypergrid/UserAgentServerConnector.cs
@@ -237,10 +237,20 @@ namespace OpenSim.Server.Handlers.Hypergrid
237 bool online = false; 237 bool online = false;
238 bool.TryParse(requestData["online"].ToString(), out online); 238 bool.TryParse(requestData["online"].ToString(), out online);
239 239
240 hash["result"] = "true";
241
242 // let's spawn a thread for this, because it may take a long time... 240 // let's spawn a thread for this, because it may take a long time...
243 Util.FireAndForget(delegate { m_HomeUsersService.StatusNotification(ids, userID, online); }); 241 List<UUID> friendsOnline = m_HomeUsersService.StatusNotification(ids, userID, online);
242 if (friendsOnline.Count > 0)
243 {
244 int i = 0;
245 foreach (UUID id in friendsOnline)
246 {
247 hash["friend_" + i.ToString()] = id.ToString();
248 i++;
249 }
250 }
251 else
252 hash["result"] = "No Friends Online";
253
244 } 254 }
245 255
246 XmlRpcResponse response = new XmlRpcResponse(); 256 XmlRpcResponse response = new XmlRpcResponse();