make sure XEngine does release script events when a script is destroyed
parent
618c6ceda5
commit
96dabca85b
|
@ -1112,10 +1112,7 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
m_part.RemFlag(PrimFlags.Scripted);
|
m_part.RemFlag(PrimFlags.Scripted);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type == (int)InventoryType.LSL)
|
m_part.ScheduleFullUpdate();
|
||||||
m_part.aggregateScriptEvents(); // this also does full update
|
|
||||||
else
|
|
||||||
m_part.ScheduleFullUpdate();
|
|
||||||
|
|
||||||
m_part.TriggerScriptChangedEvent(Changed.INVENTORY);
|
m_part.TriggerScriptChangedEvent(Changed.INVENTORY);
|
||||||
return type;
|
return type;
|
||||||
|
|
|
@ -490,6 +490,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
||||||
{
|
{
|
||||||
ReleaseControls();
|
ReleaseControls();
|
||||||
AsyncCommandManager.RemoveScript(Engine, LocalID, ItemID);
|
AsyncCommandManager.RemoveScript(Engine, LocalID, ItemID);
|
||||||
|
SceneObjectPart part = Engine.World.GetSceneObjectPart(LocalID);
|
||||||
|
if (part != null)
|
||||||
|
part.RemoveScriptEvents(ItemID);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RemoveState()
|
public void RemoveState()
|
||||||
|
|
Loading…
Reference in New Issue