avoid telling a work job to cancel itself

LSLKeyTest
UbitUmarov 2016-08-19 16:14:08 +01:00
parent 6703be2a90
commit 3fef576554
1 changed files with 9 additions and 2 deletions

View File

@ -871,13 +871,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
} }
else else
{ {
Exception e = null;
if (Engine.World.PipeEventsForScript(LocalID) || if (Engine.World.PipeEventsForScript(LocalID) ||
data.EventName == "control") // Don't freeze avies! data.EventName == "control") // Don't freeze avies!
{ {
// m_log.DebugFormat("[Script] Delivered event {2} in state {3} to {0}.{1}", // m_log.DebugFormat("[Script] Delivered event {2} in state {3} to {0}.{1}",
// PrimName, ScriptName, data.EventName, State); // PrimName, ScriptName, data.EventName, State);
try try
{ {
m_CurrentEvent = data.EventName; m_CurrentEvent = data.EventName;
@ -892,6 +893,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
{ {
m_InEvent = false; m_InEvent = false;
m_CurrentEvent = String.Empty; m_CurrentEvent = String.Empty;
m_CurrentWorkItem = null; // no longer in a event that can be canceled
} }
if (m_SaveState) if (m_SaveState)
@ -904,7 +906,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
m_SaveState = false; m_SaveState = false;
} }
} }
catch (Exception e) catch (Exception exx)
{
e = exx;
}
if(e != null)
{ {
// m_log.DebugFormat( // m_log.DebugFormat(
// "[SCRIPT] Exception in script {0} {1}: {2}{3}", // "[SCRIPT] Exception in script {0} {1}: {2}{3}",