mirror of
https://github.com/opensim/opensim.git
synced 2026-07-02 00:15:45 +08:00
do not enqueue next event processing if script is in SelfDelete state
This commit is contained in:
@@ -807,9 +807,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
||||
lock (EventQueue)
|
||||
{
|
||||
data = (EventParams)EventQueue.Dequeue();
|
||||
if (data == null) // Shouldn't happen
|
||||
if (data == null)
|
||||
{
|
||||
if (EventQueue.Count > 0 && Running && !ShuttingDown)
|
||||
// check if a null event was enqueued or if its really empty
|
||||
if (EventQueue.Count > 0 && Running && !ShuttingDown && !m_InSelfDelete)
|
||||
{
|
||||
m_CurrentWorkItem = Engine.QueueEventHandler(this);
|
||||
}
|
||||
@@ -979,7 +980,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
||||
ScriptTask.ItemID, ScriptTask.AssetID, data.EventName, EventsProcessed);
|
||||
}
|
||||
|
||||
if (EventQueue.Count > 0 && Running && !ShuttingDown)
|
||||
if (EventQueue.Count > 0 && Running && !ShuttingDown && !m_InSelfDelete)
|
||||
{
|
||||
m_CurrentWorkItem = Engine.QueueEventHandler(this);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user