avoid lastOwner beeing the group

httptests
UbitUmarov 2017-01-16 19:22:39 +00:00
parent 733072b6a3
commit ffa6c7aae2
3 changed files with 11 additions and 4 deletions

View File

@ -2751,7 +2751,8 @@ namespace OpenSim.Region.Framework.Scenes
/// <param name="cGroupID"></param> /// <param name="cGroupID"></param>
public void SetRootPartOwner(SceneObjectPart part, UUID cAgentID, UUID cGroupID) public void SetRootPartOwner(SceneObjectPart part, UUID cAgentID, UUID cGroupID)
{ {
part.LastOwnerID = part.OwnerID; if(part.GroupID != part.OwnerID && cGroupID != part.OwnerID)
part.LastOwnerID = part.OwnerID;
part.OwnerID = cAgentID; part.OwnerID = cAgentID;
part.GroupID = cGroupID; part.GroupID = cGroupID;

View File

@ -2228,7 +2228,11 @@ namespace OpenSim.Region.Framework.Scenes
dupe.LocalId = plocalID; dupe.LocalId = plocalID;
// This may be wrong... it might have to be applied in SceneObjectGroup to the object that's being duplicated. // This may be wrong... it might have to be applied in SceneObjectGroup to the object that's being duplicated.
dupe.LastOwnerID = OwnerID; if(OwnerID != GroupID)
dupe.LastOwnerID = OwnerID;
else
dupe.LastOwnerID = LastOwnerID; // redundant ?
dupe.RezzerID = RezzerID; dupe.RezzerID = RezzerID;
byte[] extraP = new byte[Shape.ExtraParams.Length]; byte[] extraP = new byte[Shape.ExtraParams.Length];
@ -5246,7 +5250,8 @@ SendFullUpdateToClient(remoteClient, Position) ignores position parameter
//LogPermissions("After ApplyNextOwnerPermissions"); //LogPermissions("After ApplyNextOwnerPermissions");
LastOwnerID = OwnerID; if(OwnerID != GroupID)
LastOwnerID = OwnerID;
OwnerID = item.Owner; OwnerID = item.Owner;
Inventory.ChangeInventoryOwner(item.Owner); Inventory.ChangeInventoryOwner(item.Owner);
} }

View File

@ -965,7 +965,8 @@ namespace OpenSim.Region.Framework.Scenes
{ {
if ((part.OwnerID != item.OwnerID) || (item.CurrentPermissions & (uint)PermissionMask.Slam) != 0 || (item.Flags & (uint)InventoryItemFlags.ObjectSlamPerm) != 0) if ((part.OwnerID != item.OwnerID) || (item.CurrentPermissions & (uint)PermissionMask.Slam) != 0 || (item.Flags & (uint)InventoryItemFlags.ObjectSlamPerm) != 0)
{ {
part.LastOwnerID = part.OwnerID; if(part.GroupID != part.OwnerID)
part.LastOwnerID = part.OwnerID;
part.OwnerID = item.OwnerID; part.OwnerID = item.OwnerID;
part.Inventory.ChangeInventoryOwner(item.OwnerID); part.Inventory.ChangeInventoryOwner(item.OwnerID);
} }