From 846d955e26e432fab023b7c9ce84a1e5755e9208 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sat, 20 Nov 2021 02:28:12 +0000 Subject: [PATCH] do not enqueue changed_region on a new script --- OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | 6 ++++-- OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index ef375425f8..be007df135 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs @@ -2154,7 +2154,7 @@ namespace OpenSim.Region.Framework.Scenes taskItem.AssetID = asset.FullID; part.Inventory.AddInventoryItem(taskItem, false); - part.Inventory.CreateScriptInstance(taskItem, 0, false, DefaultScriptEngine, 0); + part.Inventory.CreateScriptInstance(taskItem, 0, false, DefaultScriptEngine, 1); part.ParentGroup.InvalidateEffectivePerms(); @@ -2206,6 +2206,8 @@ namespace OpenSim.Region.Framework.Scenes if ((destPart.GroupID == UUID.Zero) || (destPart.GroupID != srcPart.GroupID) || ((destPart.GroupMask & (uint)PermissionMask.Modify) == 0)) return; + if((srcPart.OwnerMask & (uint)PermissionMask.Transfer) == 0) + return; } else { @@ -2268,7 +2270,7 @@ namespace OpenSim.Region.Framework.Scenes if (running > 0) { - destPart.Inventory.CreateScriptInstance(destTaskItem, start_param, false, DefaultScriptEngine, 0); + destPart.Inventory.CreateScriptInstance(destTaskItem, start_param, false, DefaultScriptEngine, 1); } destPart.ParentGroup.ResumeScripts(); diff --git a/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs b/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs index 6f422bd455..082253935d 100644 --- a/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs +++ b/OpenSim/Region/ScriptEngine/Interfaces/IScriptInstance.cs @@ -41,6 +41,7 @@ namespace OpenSim.Region.ScriptEngine.Interfaces { public enum StateSource { + None = -1, RegionStart = 0, NewRez = 1, PrimCrossing = 2,