diff options
author | Justin Clark-Casey (justincc) | 2015-01-29 17:55:08 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2015-01-29 17:55:08 +0000 |
commit | b4e955d1c107784ccf17a739cd83b2603f665d0c (patch) | |
tree | b3a60117c47a975625883ee714dd0b4fc317dda6 /OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |
parent | Correct typo in raw default script stop strategy (diff) | |
download | opensim-SC-b4e955d1c107784ccf17a739cd83b2603f665d0c.zip opensim-SC-b4e955d1c107784ccf17a739cd83b2603f665d0c.tar.gz opensim-SC-b4e955d1c107784ccf17a739cd83b2603f665d0c.tar.bz2 opensim-SC-b4e955d1c107784ccf17a739cd83b2603f665d0c.tar.xz |
Avoid a possible race condition by serializing plugin data outside the EventQueue lock in ScriptInstance.SaveState()
This takes the AsyncCommandHandler.staticLock.
However, AsyncCommandHandler.DoOneCmdHandlerPass() already holds staticLock and may attempt to take the EventQueue lock via ScriptInstance.PostEvent() in XEngine.CheckListeners()
This is a regression from faaf47a (Fri Jan 16 2015) but not simply reverting that commit since it will reintroduce a race between script removal, backup and event queue manipulating code.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/XEngine/XEngine.cs')
0 files changed, 0 insertions, 0 deletions