mirror of
https://github.com/opensim/opensim.git
synced 2026-08-05 17:05:55 +08:00
BuySell: bug fix, use all object permitions for sold item, and not the operation rights one
This commit is contained in:
@@ -205,15 +205,20 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell
|
||||
item.AssetType = asset.Type;
|
||||
item.InvType = (int)InventoryType.Object;
|
||||
item.Folder = categoryID;
|
||||
|
||||
uint nextPerms=(perms & 7) << 13;
|
||||
if ((nextPerms & (uint)PermissionMask.Copy) == 0)
|
||||
perms &= ~(uint)PermissionMask.Copy;
|
||||
if ((nextPerms & (uint)PermissionMask.Transfer) == 0)
|
||||
perms &= ~(uint)PermissionMask.Transfer;
|
||||
if ((nextPerms & (uint)PermissionMask.Modify) == 0)
|
||||
perms &= ~(uint)PermissionMask.Modify;
|
||||
|
||||
|
||||
perms = group.GetEffectivePermissions(false);
|
||||
|
||||
// if((perms & (uint)PermissionMask.FoldedMask) != 0)
|
||||
{
|
||||
if ((perms & (uint)PermissionMask.FoldedCopy) == 0)
|
||||
perms &= ~(uint)PermissionMask.Copy;
|
||||
if ((perms & (uint)PermissionMask.FoldedTransfer) == 0)
|
||||
perms &= ~(uint)PermissionMask.Transfer;
|
||||
if ((perms & (uint)PermissionMask.FoldedModify) == 0)
|
||||
perms &= ~(uint)PermissionMask.Modify;
|
||||
if ((perms & (uint)PermissionMask.FoldedExport) == 0)
|
||||
perms &= ~(uint)PermissionMask.Export;
|
||||
}
|
||||
item.BasePermissions = perms & part.NextOwnerMask;
|
||||
item.CurrentPermissions = perms & part.NextOwnerMask;
|
||||
item.NextPermissions = part.NextOwnerMask;
|
||||
|
||||
Reference in New Issue
Block a user