diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine/XEngine')
-rw-r--r-- | OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs index 7364b19..2886344 100644 --- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |||
@@ -1662,7 +1662,11 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
1662 | { | 1662 | { |
1663 | IScriptInstance instance = GetInstance(itemID); | 1663 | IScriptInstance instance = GetInstance(itemID); |
1664 | if (instance != null) | 1664 | if (instance != null) |
1665 | instance.Stop(0); | 1665 | { |
1666 | // Give the script some time to finish processing its last event. Simply aborting the script thread can | ||
1667 | // cause issues on mono 2.6, 2.10 and possibly later where locks are not released properly on abort. | ||
1668 | instance.Stop(1000); | ||
1669 | } | ||
1666 | } | 1670 | } |
1667 | 1671 | ||
1668 | public DetectParams GetDetectParams(UUID itemID, int idx) | 1672 | public DetectParams GetDetectParams(UUID itemID, int idx) |