Mantis#2336. Thank you kindly, Ralphos for a patch that:

Prevent EventAbortException inner exceptions of 
TargetInvocationException being re-thrown from 
OpenSim.Region.ScriptEngine.Shared.ScriptBase.
Executor.ExecuteEvent
0.6.0-stable
Charles Krinke 2008-10-06 00:51:36 +00:00
parent 4f6cdc08d6
commit dedc1baeb7
1 changed files with 8 additions and 3 deletions

View File

@ -191,14 +191,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
//Console.WriteLine("ScriptEngine: Executing function name: " + EventName);
#endif
// Found
try
try
{
ev.Invoke(m_Script, args);
}
catch (TargetInvocationException tie)
{
// Grab the inner exception and rethrow it
throw tie.InnerException;
// Grab the inner exception and rethrow it, unless the inner
// exception is an EventAbortException as this indicates event
// invokation termination due to a state change.
if ( !(tie.InnerException is EventAbortException) )
{
throw tie.InnerException;
}
}
catch (Exception e)
{