diff options
author | UbitUmarov | 2017-06-09 23:27:33 +0100 |
---|---|---|
committer | UbitUmarov | 2017-06-09 23:27:33 +0100 |
commit | be975d1e89cbcb62f89cb7cb8367678a80cc47c6 (patch) | |
tree | 3edacaa93423d91af424c183097c56b09c8ab70a /OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs | |
parent | only silent remove threads from watch list if they stopped ( ie still conside... (diff) | |
download | opensim-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.cs | 19 |
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)); |