aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine
diff options
context:
space:
mode:
authorMelanie Thielker2017-01-06 23:35:39 +0000
committerMelanie Thielker2017-01-06 23:35:39 +0000
commitfa5c47b916aed0de68bcb4de3692c96560e4e399 (patch)
tree605791365669f84b14fed0480fa8dfaaf41bb92b /OpenSim/Region/ScriptEngine
parentMerge branch 'master' of opensimulator.org:/var/git/opensim (diff)
downloadopensim-SC_OLD-fa5c47b916aed0de68bcb4de3692c96560e4e399.zip
opensim-SC_OLD-fa5c47b916aed0de68bcb4de3692c96560e4e399.tar.gz
opensim-SC_OLD-fa5c47b916aed0de68bcb4de3692c96560e4e399.tar.bz2
opensim-SC_OLD-fa5c47b916aed0de68bcb4de3692c96560e4e399.tar.xz
Fix a slew of event like CHANGED_OWNER, attach() etc not working.
Optimization can ba taken too far. Compile scripts synchronously for interactive rezzing because otherwise all events relating to rezzing/ wearing are lost.
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rwxr-xr-xOpenSim/Region/ScriptEngine/XEngine/XEngine.cs9
1 files changed, 8 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
index cd5308d..e3922d6 100755
--- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
+++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
@@ -1005,7 +1005,14 @@ namespace OpenSim.Region.ScriptEngine.XEngine
1005 1005
1006 Object[] parms = new Object[]{localID, itemID, script, startParam, postOnRez, (StateSource)stateSource}; 1006 Object[] parms = new Object[]{localID, itemID, script, startParam, postOnRez, (StateSource)stateSource};
1007 1007
1008 if (stateSource == (int)StateSource.ScriptedRez) 1008 // There IS such a thing as too much optimization!!
1009 // DON'T try to defer and queue the below states!
1010 // Doing so may make rezzing snappier in world, but prevents
1011 // vital events like attach, changed owner, etc, from firing.
1012 // This just MUST be synchronous. Believe me, I'm The Author!
1013 if (stateSource == (int)StateSource.ScriptedRez ||
1014 stateSource == (int)StateSource.NewRez ||
1015 stateSource == (int)StateSource.AttachedRez)
1009 { 1016 {
1010 lock (m_CompileDict) 1017 lock (m_CompileDict)
1011 { 1018 {