diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index cb7eea61d3..b99fbbeef3 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs @@ -483,7 +483,27 @@ namespace OpenSim.Region.Framework.Scenes if (item.Owner != remoteClient.AgentId) return; + bool sendUpdate = false; + item.Flags = (item.Flags & ~(uint)255) | (itemUpd.Flags & (uint)255); + if(item.AssetType == (int)AssetType.Landmark) + { + if(item.Name.StartsWith("HG ") && !itemUpd.Name.StartsWith("HG ")) + { + itemUpd.Name = "HG " + itemUpd.Name; + sendUpdate = true; + } + + int origIndx = item.Description.LastIndexOf("@ htt"); + if(origIndx >= 0) + { + if(itemUpd.Description.LastIndexOf('@') < 0) + { + itemUpd.Description += " " + item.Description.Substring(origIndx); + sendUpdate = true; + } + } + } item.Name = itemUpd.Name; item.Description = itemUpd.Description; @@ -492,8 +512,6 @@ namespace OpenSim.Region.Framework.Scenes // itemUpd.NextPermissions, itemUpd.GroupPermissions, itemUpd.EveryOnePermissions, item.Flags, // item.NextPermissions, item.GroupPermissions, item.EveryOnePermissions, item.CurrentPermissions); - bool sendUpdate = false; - if (itemUpd.NextPermissions != 0) // Use this to determine validity. Can never be 0 if valid { // Create a set of base permissions that will not include export if the user