diff options
author | Melanie | 2012-01-25 14:44:09 +0100 |
---|---|---|
committer | Melanie | 2012-01-25 14:44:09 +0100 |
commit | 24862eaf15d873bbf0a695a8274f904415143466 (patch) | |
tree | fe20b009b7afe07865158ae9a2dc9ae05939f3bb /OpenSim/Region | |
parent | Merge branch 'master' into careminster (diff) | |
download | opensim-SC_OLD-24862eaf15d873bbf0a695a8274f904415143466.zip opensim-SC_OLD-24862eaf15d873bbf0a695a8274f904415143466.tar.gz opensim-SC_OLD-24862eaf15d873bbf0a695a8274f904415143466.tar.bz2 opensim-SC_OLD-24862eaf15d873bbf0a695a8274f904415143466.tar.xz |
Spin off starting scripts in rezzed objects into a thread to avoid a recursion
into the script engine if the script was suspended inside an event.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 7af5d2d..840348a 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -3007,7 +3007,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3007 | // objects rezzed with this method are die_at_edge by default. | 3007 | // objects rezzed with this method are die_at_edge by default. |
3008 | new_group.RootPart.SetDieAtEdge(true); | 3008 | new_group.RootPart.SetDieAtEdge(true); |
3009 | 3009 | ||
3010 | new_group.ResumeScripts(); | 3010 | Util.FireAndForget(delegate object x) |
3011 | { | ||
3012 | new_group.ResumeScripts(); | ||
3013 | }); | ||
3011 | 3014 | ||
3012 | m_ScriptEngine.PostObjectEvent(m_host.LocalId, new EventParams( | 3015 | m_ScriptEngine.PostObjectEvent(m_host.LocalId, new EventParams( |
3013 | "object_rez", new Object[] { | 3016 | "object_rez", new Object[] { |