From b33da2538ed728bdc97cca20ada36913097160b0 Mon Sep 17 00:00:00 2001 From: Justin Clarke Casey Date: Wed, 16 Jan 2008 20:27:12 +0000 Subject: * Fix mantis 345 - it is now possible to duplicate prims directly in the region again without breakage * This includes their inventories * Also, this revision properly synchronizes prim inventory crud. --- OpenSim/Region/Environment/Scenes/SceneObjectPart.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'OpenSim/Region/Environment/Scenes/SceneObjectPart.cs') diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs index 93073c1..7866739 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectPart.cs @@ -952,10 +952,10 @@ namespace OpenSim.Region.Environment.Scenes #region Copying /// - /// + /// Duplicates this part. /// /// - public SceneObjectPart Copy(uint localID, LLUUID AgentID, LLUUID GroupID) + public SceneObjectPart Copy(uint localID, LLUUID AgentID, LLUUID GroupID, int linkNum) { SceneObjectPart dupe = (SceneObjectPart) MemberwiseClone(); dupe.m_shape = m_shape.Copy(); @@ -977,6 +977,10 @@ namespace OpenSim.Region.Environment.Scenes dupe.ObjectSaleType = ObjectSaleType; dupe.SalePrice = SalePrice; dupe.Category = Category; + + dupe.TaskInventory = (TaskInventoryDictionary)dupe.TaskInventory.Clone(); + + dupe.ResetIDs(linkNum); // This may be wrong... it might have to be applied in SceneObjectGroup to the object that's being duplicated. dupe.LastOwnerID = ObjectOwner; -- cgit v1.1