aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
diff options
context:
space:
mode:
authorMelanie2010-06-27 20:05:55 +0100
committerMelanie2010-06-27 20:05:55 +0100
commitba38c697e8ae18df8a2facb89ace550dfc7390a7 (patch)
treecad542e159968f53fd872d72aaaa01a4374ec35b /OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
parentDeal with incoming land objects properly so they don't just stack up (diff)
parentMerge branch 'master' of melanie@opensimulator.org:/var/git/opensim (diff)
downloadopensim-SC_OLD-ba38c697e8ae18df8a2facb89ace550dfc7390a7.zip
opensim-SC_OLD-ba38c697e8ae18df8a2facb89ace550dfc7390a7.tar.gz
opensim-SC_OLD-ba38c697e8ae18df8a2facb89ace550dfc7390a7.tar.bz2
opensim-SC_OLD-ba38c697e8ae18df8a2facb89ace550dfc7390a7.tar.xz
Merge branch 'master' into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.Inventory.cs')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs6
1 files changed, 3 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index 0380199..55c1575 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -400,7 +400,7 @@ namespace OpenSim.Region.Framework.Scenes
400 if (Permissions.PropagatePermissions() && recipient != senderId) 400 if (Permissions.PropagatePermissions() && recipient != senderId)
401 { 401 {
402 // First, make sore base is limited to the next perms 402 // First, make sore base is limited to the next perms
403 itemCopy.BasePermissions = item.BasePermissions & item.NextPermissions; 403 itemCopy.BasePermissions = item.BasePermissions & (item.NextPermissions | (uint)PermissionMask.Move);
404 // By default, current equals base 404 // By default, current equals base
405 itemCopy.CurrentPermissions = itemCopy.BasePermissions; 405 itemCopy.CurrentPermissions = itemCopy.BasePermissions;
406 406
@@ -916,7 +916,7 @@ namespace OpenSim.Region.Framework.Scenes
916 916
917 if ((part.OwnerID != destAgent) && Permissions.PropagatePermissions()) 917 if ((part.OwnerID != destAgent) && Permissions.PropagatePermissions())
918 { 918 {
919 agentItem.BasePermissions = taskItem.BasePermissions & taskItem.NextPermissions; 919 agentItem.BasePermissions = taskItem.BasePermissions & (taskItem.NextPermissions | (uint)PermissionMask.Move);
920 if (taskItem.InvType == (int)InventoryType.Object) 920 if (taskItem.InvType == (int)InventoryType.Object)
921 agentItem.CurrentPermissions = agentItem.BasePermissions & ((taskItem.CurrentPermissions & 7) << 13); 921 agentItem.CurrentPermissions = agentItem.BasePermissions & ((taskItem.CurrentPermissions & 7) << 13);
922 agentItem.CurrentPermissions = agentItem.BasePermissions ; 922 agentItem.CurrentPermissions = agentItem.BasePermissions ;
@@ -1111,7 +1111,7 @@ namespace OpenSim.Region.Framework.Scenes
1111 destTaskItem.EveryonePermissions = srcTaskItem.EveryonePermissions & 1111 destTaskItem.EveryonePermissions = srcTaskItem.EveryonePermissions &
1112 srcTaskItem.NextPermissions; 1112 srcTaskItem.NextPermissions;
1113 destTaskItem.BasePermissions = srcTaskItem.BasePermissions & 1113 destTaskItem.BasePermissions = srcTaskItem.BasePermissions &
1114 srcTaskItem.NextPermissions; 1114 (srcTaskItem.NextPermissions | (uint)PermissionMask.Move);
1115 destTaskItem.CurrentPermissions |= 8; // Slam! 1115 destTaskItem.CurrentPermissions |= 8; // Slam!
1116 } 1116 }
1117 } 1117 }