diff options
author | Teravus Ovares | 2008-11-28 19:44:44 +0000 |
---|---|---|
committer | Teravus Ovares | 2008-11-28 19:44:44 +0000 |
commit | 414bf2aaf1965d354927b7b2ebf57fcef1544d88 (patch) | |
tree | 83426c5ae84386e4fe07c91b48f766a2c2401fb2 | |
parent | * test: Add a wodge of code in order to be able to slightly extend a test to ... (diff) | |
download | opensim-SC-414bf2aaf1965d354927b7b2ebf57fcef1544d88.zip opensim-SC-414bf2aaf1965d354927b7b2ebf57fcef1544d88.tar.gz opensim-SC-414bf2aaf1965d354927b7b2ebf57fcef1544d88.tar.bz2 opensim-SC-414bf2aaf1965d354927b7b2ebf57fcef1544d88.tar.xz |
* The equals override of 'Location' is not working as expected. This caused sim restarts to fail because the test that searches for and shutsdown the UDP server listener for that region never found and shutdown the udp server. hence the error message, "only one listener on port".
* This is a high profile candidate for a unit test. (big)
-rw-r--r-- | OpenSim/Region/Application/OpenSimBase.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/OpenSim/Region/Application/OpenSimBase.cs b/OpenSim/Region/Application/OpenSimBase.cs index f7ffa00..75bdcf3 100644 --- a/OpenSim/Region/Application/OpenSimBase.cs +++ b/OpenSim/Region/Application/OpenSimBase.cs | |||
@@ -484,6 +484,8 @@ namespace OpenSim | |||
484 | 484 | ||
485 | for (int i = 0; i < m_clientServers.Count; i++) | 485 | for (int i = 0; i < m_clientServers.Count; i++) |
486 | { | 486 | { |
487 | //--> Melanie, the following needs to be fixed | ||
488 | // the Equals override is not returning true if the locations are actually equal | ||
487 | if (m_clientServers[i].HandlesRegion(new Location(whichRegion.RegionHandle))) | 489 | if (m_clientServers[i].HandlesRegion(new Location(whichRegion.RegionHandle))) |
488 | { | 490 | { |
489 | clientServerElement = i; | 491 | clientServerElement = i; |
diff --git a/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs index 01f2a09..8653b23 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs | |||
@@ -106,7 +106,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
106 | 106 | ||
107 | public bool HandlesRegion(Location x) | 107 | public bool HandlesRegion(Location x) |
108 | { | 108 | { |
109 | return x == m_location; | 109 | return x.RegionHandle == m_location.RegionHandle; |
110 | //return x == m_location; | ||
110 | } | 111 | } |
111 | 112 | ||
112 | public void AddScene(Scene x) | 113 | public void AddScene(Scene x) |
@@ -306,6 +307,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
306 | // the next set of UDP data is for a valid client. | 307 | // the next set of UDP data is for a valid client. |
307 | ResetServerEndPoint(e); | 308 | ResetServerEndPoint(e); |
308 | } | 309 | } |
310 | catch (System.ObjectDisposedException) | ||
311 | { | ||
312 | m_log.Info("[UDPSERVER]: UDP Object disposed. No need to worry about this if you're restarting the simulator."); | ||
313 | } | ||
314 | |||
309 | } | 315 | } |
310 | 316 | ||
311 | /// <summary> | 317 | /// <summary> |