diff options
author | Justin Clark-Casey (justincc) | 2014-11-29 01:33:14 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2014-11-29 01:33:14 +0000 |
commit | 55e064baf7ceaf1117d9bdc1f7e887f1bf8493d2 (patch) | |
tree | 30b270e9c757f58ba7b574dbcbf7ee5e2915740e /OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |
parent | Restore zero'ing RawVelocity in BSCharacter.ZeroMotion() in favour of not cal... (diff) | |
download | opensim-SC-55e064baf7ceaf1117d9bdc1f7e887f1bf8493d2.zip opensim-SC-55e064baf7ceaf1117d9bdc1f7e887f1bf8493d2.tar.gz opensim-SC-55e064baf7ceaf1117d9bdc1f7e887f1bf8493d2.tar.bz2 opensim-SC-55e064baf7ceaf1117d9bdc1f7e887f1bf8493d2.tar.xz |
Remove minor race condition where two threads could race on fields such as m_ScriptFailCount as set in XEngine.DoOnRezScriptQueue()
Diffstat (limited to 'OpenSim/Region/ScriptEngine/XEngine/XEngine.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs index 96da0a8..ebb8e52 100644 --- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |||
@@ -1076,6 +1076,12 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
1076 | m_log.InfoFormat( | 1076 | m_log.InfoFormat( |
1077 | "[XEngine]: Completed starting {0} scripts on {1}", scriptsStarted, m_Scene.Name); | 1077 | "[XEngine]: Completed starting {0} scripts on {1}", scriptsStarted, m_Scene.Name); |
1078 | 1078 | ||
1079 | m_Scene.EventManager.TriggerEmptyScriptCompileQueue(m_ScriptFailCount, | ||
1080 | m_ScriptErrorMessage); | ||
1081 | |||
1082 | m_ScriptFailCount = 0; | ||
1083 | m_InitialStartup = false; | ||
1084 | |||
1079 | // NOTE: Despite having a lockless queue, this lock is required | 1085 | // NOTE: Despite having a lockless queue, this lock is required |
1080 | // to make sure there is never no compile thread while there | 1086 | // to make sure there is never no compile thread while there |
1081 | // are still scripts to compile. This could otherwise happen | 1087 | // are still scripts to compile. This could otherwise happen |
@@ -1084,12 +1090,6 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
1084 | lock (m_CompileQueue) | 1090 | lock (m_CompileQueue) |
1085 | m_CurrentCompile = null; | 1091 | m_CurrentCompile = null; |
1086 | 1092 | ||
1087 | m_Scene.EventManager.TriggerEmptyScriptCompileQueue(m_ScriptFailCount, | ||
1088 | m_ScriptErrorMessage); | ||
1089 | |||
1090 | m_ScriptFailCount = 0; | ||
1091 | m_InitialStartup = false; | ||
1092 | |||
1093 | return null; | 1093 | return null; |
1094 | } | 1094 | } |
1095 | 1095 | ||