aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorUbitUmarov2019-08-01 05:31:03 +0100
committerUbitUmarov2019-08-01 05:31:03 +0100
commit96dabca85b7112c68466f8ac668b9dc07e206ef8 (patch)
treed0802063de9d60aadcb1f066aeaee64314afc0f7 /OpenSim
parentmantis8569: do aggregate script events when a script is deleted; block nonphy... (diff)
downloadopensim-SC-96dabca85b7112c68466f8ac668b9dc07e206ef8.zip
opensim-SC-96dabca85b7112c68466f8ac668b9dc07e206ef8.tar.gz
opensim-SC-96dabca85b7112c68466f8ac668b9dc07e206ef8.tar.bz2
opensim-SC-96dabca85b7112c68466f8ac668b9dc07e206ef8.tar.xz
make sure XEngine does release script events when a script is destroyed
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs5
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs3
2 files changed, 4 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
index 1ba74f4..8c880fc 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
@@ -1112,10 +1112,7 @@ namespace OpenSim.Region.Framework.Scenes
1112 m_part.RemFlag(PrimFlags.Scripted); 1112 m_part.RemFlag(PrimFlags.Scripted);
1113 } 1113 }
1114 1114
1115 if (type == (int)InventoryType.LSL) 1115 m_part.ScheduleFullUpdate();
1116 m_part.aggregateScriptEvents(); // this also does full update
1117 else
1118 m_part.ScheduleFullUpdate();
1119 1116
1120 m_part.TriggerScriptChangedEvent(Changed.INVENTORY); 1117 m_part.TriggerScriptChangedEvent(Changed.INVENTORY);
1121 return type; 1118 return type;
diff --git a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
index 351fca9..ec2a24e 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
@@ -490,6 +490,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
490 { 490 {
491 ReleaseControls(); 491 ReleaseControls();
492 AsyncCommandManager.RemoveScript(Engine, LocalID, ItemID); 492 AsyncCommandManager.RemoveScript(Engine, LocalID, ItemID);
493 SceneObjectPart part = Engine.World.GetSceneObjectPart(LocalID);
494 if (part != null)
495 part.RemoveScriptEvents(ItemID);
493 } 496 }
494 497
495 public void RemoveState() 498 public void RemoveState()