diff options
author | Melanie Thielker | 2010-07-13 20:40:23 +0200 |
---|---|---|
committer | Melanie Thielker | 2010-07-13 20:40:23 +0200 |
commit | 89c1c5c35a7665315e66e46276d1b6066f3cf2b8 (patch) | |
tree | b1edf0bac0289ea41b62b7d21672343d7546292c /OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | |
parent | Add CreateSelected flag onto objects rezzed from inventory (diff) | |
download | opensim-SC_OLD-89c1c5c35a7665315e66e46276d1b6066f3cf2b8.zip opensim-SC_OLD-89c1c5c35a7665315e66e46276d1b6066f3cf2b8.tar.gz opensim-SC_OLD-89c1c5c35a7665315e66e46276d1b6066f3cf2b8.tar.bz2 opensim-SC_OLD-89c1c5c35a7665315e66e46276d1b6066f3cf2b8.tar.xz |
Revamp the permissions propagation. This MAY mess up. Please test.
Change the slam bit from 3 to 4. Assume the old slam bit is always set.
The new slam bit is a "changed owner" bit, correcting a bug where an item
passed from the creator to another with less than full perms, then back (sale
test) would arrive back full perm. Lots of in-code docs.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs index 1149a20..70b37fb 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | |||
@@ -170,13 +170,14 @@ namespace OpenSim.Region.Framework.Scenes | |||
170 | taskItem.GroupPermissions = item.GroupPermissions & | 170 | taskItem.GroupPermissions = item.GroupPermissions & |
171 | item.NextPermissions; | 171 | item.NextPermissions; |
172 | taskItem.NextPermissions = item.NextPermissions; | 172 | taskItem.NextPermissions = item.NextPermissions; |
173 | taskItem.CurrentPermissions |= 8; | 173 | // We're adding this to a prim we don't own. Force |
174 | // owner change | ||
175 | taskItem.CurrentPermissions |= 16; // Slam | ||
174 | } | 176 | } |
175 | else | 177 | else |
176 | { | 178 | { |
177 | taskItem.BasePermissions = item.BasePermissions; | 179 | taskItem.BasePermissions = item.BasePermissions; |
178 | taskItem.CurrentPermissions = item.CurrentPermissions; | 180 | taskItem.CurrentPermissions = item.CurrentPermissions; |
179 | taskItem.CurrentPermissions |= 8; | ||
180 | taskItem.EveryonePermissions = item.EveryOnePermissions; | 181 | taskItem.EveryonePermissions = item.EveryOnePermissions; |
181 | taskItem.GroupPermissions = item.GroupPermissions; | 182 | taskItem.GroupPermissions = item.GroupPermissions; |
182 | taskItem.NextPermissions = item.NextPermissions; | 183 | taskItem.NextPermissions = item.NextPermissions; |