aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Server/Handlers
diff options
context:
space:
mode:
authorDiva Canto2011-06-07 19:36:04 -0700
committerDiva Canto2011-06-07 19:36:04 -0700
commit3307db5d4aedec5cc31541e9a28a95abdd4999d0 (patch)
tree86d7b644e3b2cb1c77fa6e2b5c9ea7223e8e64f8 /OpenSim/Server/Handlers
parentThis makes the display names work better for foreigners (diff)
downloadopensim-SC-3307db5d4aedec5cc31541e9a28a95abdd4999d0.zip
opensim-SC-3307db5d4aedec5cc31541e9a28a95abdd4999d0.tar.gz
opensim-SC-3307db5d4aedec5cc31541e9a28a95abdd4999d0.tar.bz2
opensim-SC-3307db5d4aedec5cc31541e9a28a95abdd4999d0.tar.xz
This hopefully fixes all issues with online/offline notifications across grids. http://opensimulator.org/mantis/view.php?id=5528
Diffstat (limited to 'OpenSim/Server/Handlers')
-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();