diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs index 81cef5b..79de6c0 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | |||
@@ -88,10 +88,6 @@ namespace OpenSim.Region.Framework.Scenes | |||
88 | /// <summary> | 88 | /// <summary> |
89 | /// Stop and remove the scripts contained in all the prims in this group | 89 | /// Stop and remove the scripts contained in all the prims in this group |
90 | /// </summary> | 90 | /// </summary> |
91 | /// <param name="sceneObjectBeingDeleted"> | ||
92 | /// Should be true if these scripts are being removed because the scene | ||
93 | /// object is being deleted. This will prevent spurious updates to the client. | ||
94 | /// </param> | ||
95 | public void RemoveScriptInstances(bool sceneObjectBeingDeleted) | 91 | public void RemoveScriptInstances(bool sceneObjectBeingDeleted) |
96 | { | 92 | { |
97 | SceneObjectPart[] parts = m_parts.GetArray(); | 93 | SceneObjectPart[] parts = m_parts.GetArray(); |
@@ -254,6 +250,11 @@ namespace OpenSim.Region.Framework.Scenes | |||
254 | 250 | ||
255 | public uint GetEffectivePermissions() | 251 | public uint GetEffectivePermissions() |
256 | { | 252 | { |
253 | return GetEffectivePermissions(false); | ||
254 | } | ||
255 | |||
256 | public uint GetEffectivePermissions(bool useBase) | ||
257 | { | ||
257 | uint perms=(uint)(PermissionMask.Modify | | 258 | uint perms=(uint)(PermissionMask.Modify | |
258 | PermissionMask.Copy | | 259 | PermissionMask.Copy | |
259 | PermissionMask.Move | | 260 | PermissionMask.Move | |
@@ -265,8 +266,15 @@ namespace OpenSim.Region.Framework.Scenes | |||
265 | for (int i = 0; i < parts.Length; i++) | 266 | for (int i = 0; i < parts.Length; i++) |
266 | { | 267 | { |
267 | SceneObjectPart part = parts[i]; | 268 | SceneObjectPart part = parts[i]; |
269 | <<<<<<< HEAD | ||
268 | // m_log.DebugFormat("[SCENE OBJECT GROUP INVENTORY]: Effective perms of {0} are {1}", part.Name, (OpenMetaverse.PermissionMask)part.OwnerMask); | 270 | // m_log.DebugFormat("[SCENE OBJECT GROUP INVENTORY]: Effective perms of {0} are {1}", part.Name, (OpenMetaverse.PermissionMask)part.OwnerMask); |
269 | ownerMask &= part.OwnerMask; | 271 | ownerMask &= part.OwnerMask; |
272 | ======= | ||
273 | if (useBase) | ||
274 | ownerMask &= part.BaseMask; | ||
275 | else | ||
276 | ownerMask &= part.OwnerMask; | ||
277 | >>>>>>> avn/ubitvar | ||
270 | perms &= part.Inventory.MaskEffectivePermissions(); | 278 | perms &= part.Inventory.MaskEffectivePermissions(); |
271 | } | 279 | } |
272 | 280 | ||
@@ -408,6 +416,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
408 | 416 | ||
409 | public void ResumeScripts() | 417 | public void ResumeScripts() |
410 | { | 418 | { |
419 | if (m_scene.RegionInfo.RegionSettings.DisableScripts) | ||
420 | return; | ||
421 | |||
411 | SceneObjectPart[] parts = m_parts.GetArray(); | 422 | SceneObjectPart[] parts = m_parts.GetArray(); |
412 | for (int i = 0; i < parts.Length; i++) | 423 | for (int i = 0; i < parts.Length; i++) |
413 | parts[i].Inventory.ResumeScripts(); | 424 | parts[i].Inventory.ResumeScripts(); |