aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/World/Objects
diff options
context:
space:
mode:
authorUbitUmarov2017-04-28 23:05:14 +0100
committerUbitUmarov2017-04-28 23:05:14 +0100
commit019b34ea390998f4d51c0cc6d05f79b37aa558eb (patch)
tree79dbbf69de19c4f9e95fe3fac21aff8f3f6d424f /OpenSim/Region/CoreModules/World/Objects
parentforgot a change... (diff)
downloadopensim-SC_OLD-019b34ea390998f4d51c0cc6d05f79b37aa558eb.zip
opensim-SC_OLD-019b34ea390998f4d51c0cc6d05f79b37aa558eb.tar.gz
opensim-SC_OLD-019b34ea390998f4d51c0cc6d05f79b37aa558eb.tar.bz2
opensim-SC_OLD-019b34ea390998f4d51c0cc6d05f79b37aa558eb.tar.xz
BuySell: bug fix, use all object permitions for sold item, and not the operation rights one
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Objects')
-rw-r--r--OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs23
1 files changed, 14 insertions, 9 deletions
diff --git a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs
index 90d65c7..f90285d 100644
--- a/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs
+++ b/OpenSim/Region/CoreModules/World/Objects/BuySell/BuySellModule.cs
@@ -205,15 +205,20 @@ namespace OpenSim.Region.CoreModules.World.Objects.BuySell
205 item.AssetType = asset.Type; 205 item.AssetType = asset.Type;
206 item.InvType = (int)InventoryType.Object; 206 item.InvType = (int)InventoryType.Object;
207 item.Folder = categoryID; 207 item.Folder = categoryID;
208 208
209 uint nextPerms=(perms & 7) << 13; 209 perms = group.GetEffectivePermissions(false);
210 if ((nextPerms & (uint)PermissionMask.Copy) == 0) 210
211 perms &= ~(uint)PermissionMask.Copy; 211// if((perms & (uint)PermissionMask.FoldedMask) != 0)
212 if ((nextPerms & (uint)PermissionMask.Transfer) == 0) 212 {
213 perms &= ~(uint)PermissionMask.Transfer; 213 if ((perms & (uint)PermissionMask.FoldedCopy) == 0)
214 if ((nextPerms & (uint)PermissionMask.Modify) == 0) 214 perms &= ~(uint)PermissionMask.Copy;
215 perms &= ~(uint)PermissionMask.Modify; 215 if ((perms & (uint)PermissionMask.FoldedTransfer) == 0)
216 216 perms &= ~(uint)PermissionMask.Transfer;
217 if ((perms & (uint)PermissionMask.FoldedModify) == 0)
218 perms &= ~(uint)PermissionMask.Modify;
219 if ((perms & (uint)PermissionMask.FoldedExport) == 0)
220 perms &= ~(uint)PermissionMask.Export;
221 }
217 item.BasePermissions = perms & part.NextOwnerMask; 222 item.BasePermissions = perms & part.NextOwnerMask;
218 item.CurrentPermissions = perms & part.NextOwnerMask; 223 item.CurrentPermissions = perms & part.NextOwnerMask;
219 item.NextPermissions = part.NextOwnerMask; 224 item.NextPermissions = part.NextOwnerMask;