aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs7
1 files changed, 3 insertions, 4 deletions
diff --git a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
index 901144a..fe9de1b 100644
--- a/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
+++ b/OpenSim/Region/CoreModules/World/Permissions/PermissionsModule.cs
@@ -556,6 +556,8 @@ namespace OpenSim.Region.CoreModules.World.Permissions
556 556
557 // Customize the EveryoneMask 557 // Customize the EveryoneMask
558 uint objectEveryoneMask = ApplyObjectModifyMasks(task.EveryoneMask, objflags); 558 uint objectEveryoneMask = ApplyObjectModifyMasks(task.EveryoneMask, objflags);
559 if (objectOwner != UUID.Zero)
560 objectEveryoneMask |= (uint)PrimFlags.ObjectAnyOwner;
559 561
560 if (m_bypassPermissions) 562 if (m_bypassPermissions)
561 return objectOwnerMask; 563 return objectOwnerMask;
@@ -578,12 +580,9 @@ namespace OpenSim.Region.CoreModules.World.Permissions
578 { 580 {
579 // Admin objects should not be editable by the above 581 // Admin objects should not be editable by the above
580 if (!IsAdministrator(objectOwner)) 582 if (!IsAdministrator(objectOwner))
581 return objectOwnerMask; 583 return objectOwnerMask;
582 } 584 }
583 585
584 if ((objectOwnerMask & (uint)PermissionMask.Transfer) != 0 && task.ObjectSaleType != 0)
585 objectEveryoneMask |= (uint)PrimFlags.ObjectTransfer;
586
587 // Group permissions 586 // Group permissions
588 if ((task.GroupID != UUID.Zero) && IsGroupMember(task.GroupID, user, 0)) 587 if ((task.GroupID != UUID.Zero) && IsGroupMember(task.GroupID, user, 0))
589 return objectGroupMask | objectEveryoneMask; 588 return objectGroupMask | objectEveryoneMask;