diff --git a/OpenSim/Region/ClientStack/Linden/UDP/OpenSimUDPBase.cs b/OpenSim/Region/ClientStack/Linden/UDP/OpenSimUDPBase.cs index 8dd96d65d6..f362b06f0a 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/OpenSimUDPBase.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/OpenSimUDPBase.cs @@ -228,14 +228,23 @@ namespace OpenMetaverse { m_log.Debug("[UDPBASE]: Failed to increase default TTL"); } + try { // This udp socket flag is not supported under mono, // so we'll catch the exception and continue - m_udpSocket.IOControl(SIO_UDP_CONNRESET, new byte[] { 0 }, null); - m_log.Debug("[UDPBASE]: SIO_UDP_CONNRESET flag set"); + // Try does not protect some mono versions on mac + if(Util.IsWindows()) + { + m_udpSocket.IOControl(SIO_UDP_CONNRESET, new byte[] { 0 }, null); + m_log.Debug("[UDPBASE]: SIO_UDP_CONNRESET flag set"); + } + else + { + m_log.Debug("[UDPBASE]: SIO_UDP_CONNRESET flag not supported on this platform, ignoring"); + } } - catch (SocketException) + catch { m_log.Debug("[UDPBASE]: SIO_UDP_CONNRESET flag not supported on this platform, ignoring"); }