added patch 1633, thanks Melanie.
Although I think a bit of abstraction needs to be done to make it easy to override the deleting off the inventory item when rezzing a object.0.6.0-stable
parent
037b31f9db
commit
7917398451
|
@ -1843,15 +1843,18 @@ namespace OpenSim.Region.Environment.Scenes
|
|||
|
||||
if (rootPart.OwnerID != item.Owner)
|
||||
{
|
||||
if ((item.CurrentPermissions & 8) != 0)
|
||||
if (ExternalChecks.ExternalChecksPropagatePermissions())
|
||||
{
|
||||
foreach (SceneObjectPart part in partList)
|
||||
if ((item.CurrentPermissions & 8) != 0)
|
||||
{
|
||||
part.EveryoneMask = item.EveryOnePermissions;
|
||||
part.NextOwnerMask = item.NextPermissions;
|
||||
foreach (SceneObjectPart part in partList)
|
||||
{
|
||||
part.EveryoneMask = item.EveryOnePermissions;
|
||||
part.NextOwnerMask = item.NextPermissions;
|
||||
}
|
||||
}
|
||||
group.ApplyNextOwnerPermissions();
|
||||
}
|
||||
group.ApplyNextOwnerPermissions();
|
||||
}
|
||||
|
||||
foreach (SceneObjectPart part in partList)
|
||||
|
@ -1887,6 +1890,12 @@ namespace OpenSim.Region.Environment.Scenes
|
|||
if (!attachment)
|
||||
rootPart.ScheduleFullUpdate();
|
||||
|
||||
if (!ExternalChecks.ExternalChecksBypassPermissions())
|
||||
{
|
||||
if ((item.CurrentPermissions & (uint)PermissionMask.Copy) == 0)
|
||||
userInfo.DeleteItem(item.ID);
|
||||
}
|
||||
|
||||
return rootPart.ParentGroup;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue