diff --git a/OpenSim/Region/Application/OpenSim.cs b/OpenSim/Region/Application/OpenSim.cs index 524f2be10b..5977f40bf0 100644 --- a/OpenSim/Region/Application/OpenSim.cs +++ b/OpenSim/Region/Application/OpenSim.cs @@ -143,7 +143,7 @@ namespace OpenSim //Mono.Unix.Native.Signum signal = signals [index].Signum; MainConsole.Instance.RunCommand("shutdown"); } - }); + }); #endif /// @@ -165,6 +165,7 @@ namespace OpenSim { new Mono.Unix.UnixSignal(Mono.Unix.Native.Signum.SIGTERM) }; + signal_thread.IsBackground = true; signal_thread.Start(); } catch (Exception e) @@ -485,6 +486,12 @@ namespace OpenSim RunCommandScript(m_shutdownCommandsFile); } + if (m_timedScript != "disabled") + { + m_scriptTimer.Dispose(); + m_timedScript = "disabled"; + } + base.ShutdownSpecific(); } diff --git a/OpenSim/Server/Base/ServicesServerBase.cs b/OpenSim/Server/Base/ServicesServerBase.cs index 8db97a84c3..2185727a13 100644 --- a/OpenSim/Server/Base/ServicesServerBase.cs +++ b/OpenSim/Server/Base/ServicesServerBase.cs @@ -211,6 +211,7 @@ namespace OpenSim.Server.Base { new Mono.Unix.UnixSignal(Mono.Unix.Native.Signum.SIGTERM) }; + ignal_thread.IsBackground = true; signal_thread.Start(); } catch (Exception e)