aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework
diff options
context:
space:
mode:
authorUbitUmarov2016-12-18 03:20:41 +0000
committerUbitUmarov2016-12-18 03:20:41 +0000
commitdf7435a7030bc88987f2a60a2fe118f13342a31c (patch)
tree4d91611d169e96addb1e2ddd2e90084fa8c6160b /OpenSim/Region/Framework
parentallow a creator that is also onwer to change export flag. Add missing setting... (diff)
downloadopensim-SC_OLD-df7435a7030bc88987f2a60a2fe118f13342a31c.zip
opensim-SC_OLD-df7435a7030bc88987f2a60a2fe118f13342a31c.tar.gz
opensim-SC_OLD-df7435a7030bc88987f2a60a2fe118f13342a31c.tar.bz2
opensim-SC_OLD-df7435a7030bc88987f2a60a2fe118f13342a31c.tar.xz
just give up on Export flag, seems just broken no matter water with current FS and singu 1.8.7
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs5
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs5
2 files changed, 8 insertions, 2 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index 000944f..9772b35 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -433,7 +433,7 @@ namespace OpenSim.Region.Framework.Scenes
433// m_log.DebugFormat("[XXX]: B: {0} O: {1} E: {2}", itemUpd.BasePermissions, itemUpd.CurrentPermissions, itemUpd.EveryOnePermissions); 433// m_log.DebugFormat("[XXX]: B: {0} O: {1} E: {2}", itemUpd.BasePermissions, itemUpd.CurrentPermissions, itemUpd.EveryOnePermissions);
434 const uint permALLandExport = (uint)(PermissionMask.All | PermissionMask.Export); 434 const uint permALLandExport = (uint)(PermissionMask.All | PermissionMask.Export);
435 // If the user is not the creator or doesn't have "E" in both "B" and "O", deny setting export 435 // If the user is not the creator or doesn't have "E" in both "B" and "O", deny setting export
436 if (item.CreatorIdAsUuid != item.Owner && 436 if (item.CreatorIdAsUuid != item.Owner ||
437 ((item.BasePermissions & permALLandExport) != permALLandExport || 437 ((item.BasePermissions & permALLandExport) != permALLandExport ||
438 (item.CurrentPermissions & (uint)PermissionMask.Export) == 0)) 438 (item.CurrentPermissions & (uint)PermissionMask.Export) == 0))
439 denyExportChange = true; 439 denyExportChange = true;
@@ -451,10 +451,12 @@ namespace OpenSim.Region.Framework.Scenes
451 { 451 {
452 itemUpd.NextPermissions = (uint)(PermissionMask.All); 452 itemUpd.NextPermissions = (uint)(PermissionMask.All);
453 itemUpd.EveryOnePermissions |= (uint)PermissionMask.Export; 453 itemUpd.EveryOnePermissions |= (uint)PermissionMask.Export;
454 sendUpdate = true;
454 } 455 }
455 else 456 else
456 { 457 {
457 itemUpd.EveryOnePermissions &= ~(uint)PermissionMask.Export; 458 itemUpd.EveryOnePermissions &= ~(uint)PermissionMask.Export;
459 sendUpdate = true;
458 } 460 }
459 } 461 }
460 else 462 else
@@ -464,6 +466,7 @@ namespace OpenSim.Region.Framework.Scenes
464 { 466 {
465// m_log.DebugFormat("[XXX]: Force full perm"); 467// m_log.DebugFormat("[XXX]: Force full perm");
466 itemUpd.NextPermissions = (uint)(PermissionMask.All); 468 itemUpd.NextPermissions = (uint)(PermissionMask.All);
469 sendUpdate = true;
467 } 470 }
468 } 471 }
469 472
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
index 98617d1..68d80f0 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs
@@ -258,7 +258,8 @@ namespace OpenSim.Region.Framework.Scenes
258 uint perms=(uint)(PermissionMask.Modify | 258 uint perms=(uint)(PermissionMask.Modify |
259 PermissionMask.Copy | 259 PermissionMask.Copy |
260 PermissionMask.Move | 260 PermissionMask.Move |
261 PermissionMask.Transfer) | 7; 261 PermissionMask.Transfer |
262 PermissionMask.Export ) | 7;
262 263
263 uint ownerMask = 0x7fffffff; 264 uint ownerMask = 0x7fffffff;
264 265
@@ -281,6 +282,8 @@ namespace OpenSim.Region.Framework.Scenes
281 perms &= ~(uint)PermissionMask.Copy; 282 perms &= ~(uint)PermissionMask.Copy;
282 if ((ownerMask & (uint)PermissionMask.Transfer) == 0) 283 if ((ownerMask & (uint)PermissionMask.Transfer) == 0)
283 perms &= ~(uint)PermissionMask.Transfer; 284 perms &= ~(uint)PermissionMask.Transfer;
285 if ((ownerMask & (uint)PermissionMask.Export) == 0)
286 perms &= ~(uint)PermissionMask.Export;
284 287
285 // If root prim permissions are applied here, this would screw 288 // If root prim permissions are applied here, this would screw
286 // with in-inventory manipulation of the next owner perms 289 // with in-inventory manipulation of the next owner perms