diff options
Diffstat (limited to 'OpenSim/Region')
3 files changed, 12 insertions, 3 deletions
diff --git a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs index 0f08408..3342164 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/Tests/ArchiverTests.cs | |||
@@ -218,7 +218,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver.Tests | |||
218 | public void TestLoadOarV0_2() | 218 | public void TestLoadOarV0_2() |
219 | { | 219 | { |
220 | TestHelper.InMethod(); | 220 | TestHelper.InMethod(); |
221 | //log4net.Config.XmlConfigurator.Configure(); | 221 | // log4net.Config.XmlConfigurator.Configure(); |
222 | 222 | ||
223 | MemoryStream archiveWriteStream = new MemoryStream(); | 223 | MemoryStream archiveWriteStream = new MemoryStream(); |
224 | TarArchiveWriter tar = new TarArchiveWriter(archiveWriteStream); | 224 | TarArchiveWriter tar = new TarArchiveWriter(archiveWriteStream); |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index 3ed74e1..3753dcb 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -494,7 +494,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
494 | public UUID UUID | 494 | public UUID UUID |
495 | { | 495 | { |
496 | get { return m_uuid; } | 496 | get { return m_uuid; } |
497 | set { m_uuid = value; } | 497 | set |
498 | { | ||
499 | m_uuid = value; | ||
500 | |||
501 | // This is necessary so that TaskInventoryItem parent ids correctly reference the new uuid of this part | ||
502 | if (Inventory != null) | ||
503 | Inventory.ResetInventoryIDs(); | ||
504 | } | ||
498 | } | 505 | } |
499 | 506 | ||
500 | public uint LocalId | 507 | public uint LocalId |
@@ -2756,7 +2763,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
2756 | UUID = UUID.Random(); | 2763 | UUID = UUID.Random(); |
2757 | LinkNum = linkNum; | 2764 | LinkNum = linkNum; |
2758 | LocalId = 0; | 2765 | LocalId = 0; |
2759 | Inventory.ResetInventoryIDs(); | ||
2760 | } | 2766 | } |
2761 | 2767 | ||
2762 | /// <summary> | 2768 | /// <summary> |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index ca089a1..87c4860 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs | |||
@@ -119,6 +119,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
119 | /// <param name="linkNum">Link number for the part</param> | 119 | /// <param name="linkNum">Link number for the part</param> |
120 | public void ResetInventoryIDs() | 120 | public void ResetInventoryIDs() |
121 | { | 121 | { |
122 | if (null == m_part || null == m_part.ParentGroup) | ||
123 | return; | ||
124 | |||
122 | lock (m_items) | 125 | lock (m_items) |
123 | { | 126 | { |
124 | if (0 == m_items.Count) | 127 | if (0 == m_items.Count) |