Merge branch 'careminster-presence-refactor' of ssh://melanie@3dhosting.de/var/git/careminster into careminster-presence-refactor

avinationmerge
Melanie 2011-04-01 21:52:04 +01:00
commit 3053b60143
2 changed files with 12 additions and 14 deletions

View File

@ -823,21 +823,19 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
} }
} }
foreach (SceneObjectPart part in group.Parts)
{
part.LastOwnerID = part.OwnerID;
part.OwnerID = item.Owner;
part.Inventory.ChangeInventoryOwner(item.Owner);
}
group.ApplyNextOwnerPermissions(); group.ApplyNextOwnerPermissions();
} }
} }
foreach (SceneObjectPart part in group.Parts) foreach (SceneObjectPart part in group.Parts)
{ {
// TODO: Remove the magic number badness
if ((part.OwnerID != item.Owner) ||
(item.CurrentPermissions & 16) != 0 || // Magic number
(item.Flags & (uint)InventoryItemFlags.ObjectSlamPerm) != 0)
{
part.LastOwnerID = part.OwnerID;
part.OwnerID = item.Owner;
part.Inventory.ChangeInventoryOwner(item.Owner);
}
if ((item.Flags & (uint)InventoryItemFlags.ObjectOverwriteEveryone) != 0) if ((item.Flags & (uint)InventoryItemFlags.ObjectOverwriteEveryone) != 0)
part.EveryoneMask = item.EveryOnePermissions; part.EveryoneMask = item.EveryOnePermissions;
if ((item.Flags & (uint)InventoryItemFlags.ObjectOverwriteNextOwner) != 0) if ((item.Flags & (uint)InventoryItemFlags.ObjectOverwriteNextOwner) != 0)

View File

@ -186,12 +186,12 @@ namespace OpenSim.Region.Framework.Scenes
foreach (TaskInventoryItem item in items) foreach (TaskInventoryItem item in items)
{ {
if (ownerId != item.OwnerID) if (ownerId != item.OwnerID)
{
item.LastOwnerID = item.OwnerID; item.LastOwnerID = item.OwnerID;
item.OwnerID = ownerId; item.OwnerID = ownerId;
item.PermsMask = 0; item.PermsMask = 0;
item.PermsGranter = UUID.Zero; item.PermsGranter = UUID.Zero;
} item.OwnerChanged = true;
} }
m_items.LockItemsForWrite(false); m_items.LockItemsForWrite(false);
} }