aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
diff options
context:
space:
mode:
authorUbitUmarov2017-06-09 23:27:33 +0100
committerUbitUmarov2017-06-09 23:27:33 +0100
commitbe975d1e89cbcb62f89cb7cb8367678a80cc47c6 (patch)
tree3edacaa93423d91af424c183097c56b09c8ab70a /OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
parentonly silent remove threads from watch list if they stopped ( ie still conside... (diff)
downloadopensim-SC-be975d1e89cbcb62f89cb7cb8367678a80cc47c6.zip
opensim-SC-be975d1e89cbcb62f89cb7cb8367678a80cc47c6.tar.gz
opensim-SC-be975d1e89cbcb62f89cb7cb8367678a80cc47c6.tar.bz2
opensim-SC-be975d1e89cbcb62f89cb7cb8367678a80cc47c6.tar.xz
add a adicional in transit flag to signal HG tps, and use it to ignore usernames requests sent to start region during tp; don't send unknows display names ( getdisplaynames cap )
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs19
1 files changed, 15 insertions, 4 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
index e1b9e08..6f5775a 100644
--- a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
+++ b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
@@ -1577,7 +1577,10 @@ namespace OpenSim.Region.ClientStack.Linden
1577 break; 1577 break;
1578 1578
1579 m_Scene.TryGetScenePresence(m_AgentID, out sp); 1579 m_Scene.TryGetScenePresence(m_AgentID, out sp);
1580 if(sp == null || sp.IsChildAgent || sp.IsDeleted || sp.IsInTransit) 1580 if(sp == null || sp.IsChildAgent || sp.IsDeleted)
1581 break;
1582
1583 if(sp.IsInTransit && !sp.IsInLocalTransit)
1581 break; 1584 break;
1582 1585
1583 client = sp.ControllingClient; 1586 client = sp.ControllingClient;
@@ -1699,7 +1702,10 @@ namespace OpenSim.Region.ClientStack.Linden
1699 break; 1702 break;
1700 1703
1701 m_Scene.TryGetScenePresence(m_AgentID, out sp); 1704 m_Scene.TryGetScenePresence(m_AgentID, out sp);
1702 if(sp == null || sp.IsChildAgent || sp.IsDeleted || sp.IsInTransit) 1705 if(sp == null || sp.IsChildAgent || sp.IsDeleted)
1706 break;
1707
1708 if(sp.IsInTransit && !sp.IsInLocalTransit)
1703 break; 1709 break;
1704 1710
1705 client = sp.ControllingClient; 1711 client = sp.ControllingClient;
@@ -1807,7 +1813,7 @@ namespace OpenSim.Region.ClientStack.Linden
1807 if(sp == null || sp.IsDeleted) 1813 if(sp == null || sp.IsDeleted)
1808 return ""; 1814 return "";
1809 1815
1810 if(sp.IsInTransit) 1816 if(sp.IsInTransit && !sp.IsInLocalTransit)
1811 { 1817 {
1812 httpResponse.StatusCode = (int)System.Net.HttpStatusCode.ServiceUnavailable; 1818 httpResponse.StatusCode = (int)System.Net.HttpStatusCode.ServiceUnavailable;
1813 httpResponse.AddHeader("Retry-After","30"); 1819 httpResponse.AddHeader("Retry-After","30");
@@ -1817,7 +1823,6 @@ namespace OpenSim.Region.ClientStack.Linden
1817 NameValueCollection query = HttpUtility.ParseQueryString(httpRequest.Url.Query); 1823 NameValueCollection query = HttpUtility.ParseQueryString(httpRequest.Url.Query);
1818 string[] ids = query.GetValues("ids"); 1824 string[] ids = query.GetValues("ids");
1819 1825
1820
1821 Dictionary<UUID,string> names = m_UserManager.GetUsersNames(ids); 1826 Dictionary<UUID,string> names = m_UserManager.GetUsersNames(ids);
1822 1827
1823 OSDMap osdReply = new OSDMap(); 1828 OSDMap osdReply = new OSDMap();
@@ -1833,12 +1838,18 @@ namespace OpenSim.Region.ClientStack.Linden
1833 1838
1834 string[] parts = kvp.Value.Split(new char[] {' '}); 1839 string[] parts = kvp.Value.Split(new char[] {' '});
1835 OSDMap osdname = new OSDMap(); 1840 OSDMap osdname = new OSDMap();
1841
1842 // dont tell about unknown users, we can't send them back on Bad either
1843 if(parts[0] == "Unknown")
1844 continue;
1845/*
1836 if(parts[0] == "Unknown") 1846 if(parts[0] == "Unknown")
1837 { 1847 {
1838 osdname["display_name_next_update"] = OSD.FromDate(DateTime.UtcNow.AddHours(1)); 1848 osdname["display_name_next_update"] = OSD.FromDate(DateTime.UtcNow.AddHours(1));
1839 osdname["display_name_expires"] = OSD.FromDate(DateTime.UtcNow.AddHours(2)); 1849 osdname["display_name_expires"] = OSD.FromDate(DateTime.UtcNow.AddHours(2));
1840 } 1850 }
1841 else 1851 else
1852*/
1842 { 1853 {
1843 osdname["display_name_next_update"] = OSD.FromDate(DateTime.UtcNow.AddDays(8)); 1854 osdname["display_name_next_update"] = OSD.FromDate(DateTime.UtcNow.AddDays(8));
1844 osdname["display_name_expires"] = OSD.FromDate(DateTime.UtcNow.AddMonths(1)); 1855 osdname["display_name_expires"] = OSD.FromDate(DateTime.UtcNow.AddMonths(1));