diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine/XEngine/XEngine.cs')
-rwxr-xr-x | OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs index 5071884..62bf803 100755 --- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |||
@@ -699,6 +699,8 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
699 | { | 699 | { |
700 | if (instance.Running) | 700 | if (instance.Running) |
701 | { | 701 | { |
702 | instance.StayStopped = true; // the script was stopped explicitly | ||
703 | |||
702 | instance.Stop(0); | 704 | instance.Stop(0); |
703 | 705 | ||
704 | SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID); | 706 | SceneObjectPart sop = m_Scene.GetSceneObjectPart(instance.ObjectID); |
@@ -1914,6 +1916,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
1914 | 1916 | ||
1915 | if (instance != null) | 1917 | if (instance != null) |
1916 | { | 1918 | { |
1919 | lock (instance.EventQueue) | ||
1920 | instance.StayStopped = true; // the script was stopped explicitly | ||
1921 | |||
1917 | instance.Stop(m_WaitForEventCompletionOnScriptStop); | 1922 | instance.Stop(m_WaitForEventCompletionOnScriptStop); |
1918 | } | 1923 | } |
1919 | else | 1924 | else |