diff options
Diffstat (limited to 'OpenSim/Region/Framework')
4 files changed, 23 insertions, 11 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index 8bd0c0a..55db968 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | |||
@@ -40,7 +40,7 @@ using OpenSim.Framework; | |||
40 | using OpenSim.Region.Framework; | 40 | using OpenSim.Region.Framework; |
41 | using OpenSim.Framework.Client; | 41 | using OpenSim.Framework.Client; |
42 | using OpenSim.Region.Framework.Interfaces; | 42 | using OpenSim.Region.Framework.Interfaces; |
43 | using OpenSim.Region.Framework.Scenes.Serialization; | 43 | using OpenSim.Region.Framework.Scenes.Serialization; |
44 | using OpenSim.Services.Interfaces; | 44 | using OpenSim.Services.Interfaces; |
45 | using PermissionMask = OpenSim.Framework.PermissionMask; | 45 | using PermissionMask = OpenSim.Framework.PermissionMask; |
46 | 46 | ||
@@ -127,11 +127,11 @@ namespace OpenSim.Region.Framework.Scenes | |||
127 | 127 | ||
128 | return false; | 128 | return false; |
129 | } | 129 | } |
130 | } | 130 | } |
131 | 131 | ||
132 | public bool AddInventoryItem(InventoryItemBase item) | 132 | public bool AddInventoryItem(InventoryItemBase item) |
133 | { | 133 | { |
134 | return AddInventoryItem(item, true); | 134 | return AddInventoryItem(item, true); |
135 | } | 135 | } |
136 | 136 | ||
137 | /// <summary> | 137 | /// <summary> |
@@ -1074,7 +1074,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
1074 | // } | 1074 | // } |
1075 | 1075 | ||
1076 | CreateNewInventoryItem( | 1076 | CreateNewInventoryItem( |
1077 | remoteClient, remoteClient.AgentId.ToString(), string.Empty, folderID, | 1077 | remoteClient, remoteClient.AgentId.ToString(), string.Empty, folderID, |
1078 | name, description, 0, callbackID, olditemID, type, invType, | 1078 | name, description, 0, callbackID, olditemID, type, invType, |
1079 | (uint)PermissionMask.All | (uint)PermissionMask.Export, (uint)PermissionMask.All | (uint)PermissionMask.Export, (uint)PermissionMask.All, | 1079 | (uint)PermissionMask.All | (uint)PermissionMask.Export, (uint)PermissionMask.All | (uint)PermissionMask.Export, (uint)PermissionMask.All, |
1080 | (uint)PermissionMask.All | (uint)PermissionMask.Export, (uint)PermissionMask.All | (uint)PermissionMask.Export, Util.UnixTimeSinceEpoch(), | 1080 | (uint)PermissionMask.All | (uint)PermissionMask.Export, (uint)PermissionMask.All | (uint)PermissionMask.Export, Util.UnixTimeSinceEpoch(), |
@@ -2183,7 +2183,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2183 | } | 2183 | } |
2184 | } | 2184 | } |
2185 | 2185 | ||
2186 | // OK, we're done with permissions. Let's check if any part of the code prevents the objects from being deleted | 2186 | // OK, we're done with permissions. Let's check if any part of the code prevents the objects from being deleted |
2187 | bool canDelete = EventManager.TriggerDeRezRequested(remoteClient, deleteGroups, action); | 2187 | bool canDelete = EventManager.TriggerDeRezRequested(remoteClient, deleteGroups, action); |
2188 | 2188 | ||
2189 | if (permissionToTake && (action != DeRezAction.Delete || this.m_useTrashOnDelete)) | 2189 | if (permissionToTake && (action != DeRezAction.Delete || this.m_useTrashOnDelete)) |
diff --git a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs index ea242f5..ef2125b 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs | |||
@@ -487,7 +487,16 @@ namespace OpenSim.Region.Framework.Scenes | |||
487 | 487 | ||
488 | void SendInventoryAsync(IClientAPI remoteClient, UUID folderID, UUID ownerID, bool fetchFolders, bool fetchItems, int sortOrder) | 488 | void SendInventoryAsync(IClientAPI remoteClient, UUID folderID, UUID ownerID, bool fetchFolders, bool fetchItems, int sortOrder) |
489 | { | 489 | { |
490 | SendInventoryUpdate(remoteClient, new InventoryFolderBase(folderID), fetchFolders, fetchItems); | 490 | try |
491 | { | ||
492 | SendInventoryUpdate(remoteClient, new InventoryFolderBase(folderID), fetchFolders, fetchItems); | ||
493 | } | ||
494 | catch (Exception e) | ||
495 | { | ||
496 | m_log.Error( | ||
497 | string.Format( | ||
498 | "[AGENT INVENTORY]: Error in SendInventoryAsync() for {0} with folder ID {1}. Exception ", e)); | ||
499 | } | ||
491 | } | 500 | } |
492 | 501 | ||
493 | void SendInventoryComplete(IAsyncResult iar) | 502 | void SendInventoryComplete(IAsyncResult iar) |
diff --git a/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs b/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs index 8101768..c8c8714 100644 --- a/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs +++ b/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs | |||
@@ -52,7 +52,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
52 | public class SceneCommunicationService //one instance per region | 52 | public class SceneCommunicationService //one instance per region |
53 | { | 53 | { |
54 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 54 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
55 | private static string LogHeader = "[SCENE COMMUNIATION SERVICE]"; | 55 | private static string LogHeader = "[SCENE COMMUNICATION SERVICE]"; |
56 | 56 | ||
57 | protected RegionInfo m_regionInfo; | 57 | protected RegionInfo m_regionInfo; |
58 | protected Scene m_scene; | 58 | protected Scene m_scene; |
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs index c318e53..1ca250a 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs | |||
@@ -4836,7 +4836,10 @@ namespace OpenSim.Region.Framework.Scenes | |||
4836 | if (OwnerID != item.Owner) | 4836 | if (OwnerID != item.Owner) |
4837 | { | 4837 | { |
4838 | //LogPermissions("Before ApplyNextOwnerPermissions"); | 4838 | //LogPermissions("Before ApplyNextOwnerPermissions"); |
4839 | ApplyNextOwnerPermissions(); | 4839 | |
4840 | if (scene.Permissions.PropagatePermissions()) | ||
4841 | ApplyNextOwnerPermissions(); | ||
4842 | |||
4840 | //LogPermissions("After ApplyNextOwnerPermissions"); | 4843 | //LogPermissions("After ApplyNextOwnerPermissions"); |
4841 | 4844 | ||
4842 | LastOwnerID = OwnerID; | 4845 | LastOwnerID = OwnerID; |