diff options
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs index fe711d9..d78738f 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs | |||
@@ -676,6 +676,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance | |||
676 | 676 | ||
677 | lock (EventQueue) | 677 | lock (EventQueue) |
678 | { | 678 | { |
679 | // The only events that persist across state changes are timers | ||
680 | if (m_StateChangeInProgress && data.EventName != "timer") | ||
681 | return; | ||
682 | |||
679 | if (EventQueue.Count >= m_MaxScriptQueue) | 683 | if (EventQueue.Count >= m_MaxScriptQueue) |
680 | return; | 684 | return; |
681 | 685 | ||
@@ -719,9 +723,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance | |||
719 | 723 | ||
720 | m_CollisionInQueue = true; | 724 | m_CollisionInQueue = true; |
721 | } | 725 | } |
722 | |||
723 | // The only events that persist across state changes are timers | ||
724 | if (m_StateChangeInProgress && data.EventName != "timer") return; | ||
725 | 726 | ||
726 | EventQueue.Enqueue(data); | 727 | EventQueue.Enqueue(data); |
727 | 728 | ||