MemberwiseClone() also clones the "already backed up" flag, preventing prims
created by drag-copying from being persisted. If such a prim is made the root
prims of a link set, the entire set will not be persisted. Fixed now.
0.6.0-stable
Melanie Thielker 2008-10-20 22:14:24 +00:00
parent e2abd2bf55
commit 81e220af8d
1 changed files with 3 additions and 1 deletions

View File

@ -1009,7 +1009,7 @@ namespace OpenSim.Region.Environment.Scenes
// that they don't happen, otherwise the deleted objects will reappear
m_isDeleted = true;
// DetachFromBackup();
DetachFromBackup();
foreach (SceneObjectPart part in m_parts.Values)
{
@ -1278,6 +1278,7 @@ namespace OpenSim.Region.Environment.Scenes
public SceneObjectGroup Copy(UUID cAgentID, UUID cGroupID, bool userExposed)
{
SceneObjectGroup dupe = (SceneObjectGroup) MemberwiseClone();
dupe.m_isBackedUp = false;
dupe.m_parts = new Dictionary<UUID, SceneObjectPart>();
dupe.m_parts.Clear();
//dupe.OwnerID = AgentID;
@ -1860,6 +1861,7 @@ namespace OpenSim.Region.Environment.Scenes
// The traffic caused is always going to be pretty minor, so it's not high priority
//objectGroup.DeleteGroup();
AttachToBackup();
HasGroupChanged = true;
ScheduleGroupForFullUpdate();
}