diff options
Diffstat (limited to 'OpenSim/Region')
3 files changed, 2 insertions, 15 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs index 4933147..b714f2b 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs | |||
@@ -984,14 +984,11 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
984 | public virtual bool CanGetAgentInventoryItem(IClientAPI remoteClient, UUID itemID, UUID requestID) | 984 | public virtual bool CanGetAgentInventoryItem(IClientAPI remoteClient, UUID itemID, UUID requestID) |
985 | { | 985 | { |
986 | InventoryItemBase assetRequestItem = GetItem(remoteClient.AgentId, itemID); | 986 | InventoryItemBase assetRequestItem = GetItem(remoteClient.AgentId, itemID); |
987 | |||
988 | if (assetRequestItem == null) | 987 | if (assetRequestItem == null) |
989 | { | 988 | { |
990 | ILibraryService lib = m_Scene.RequestModuleInterface<ILibraryService>(); | 989 | ILibraryService lib = m_Scene.RequestModuleInterface<ILibraryService>(); |
991 | |||
992 | if (lib != null) | 990 | if (lib != null) |
993 | assetRequestItem = lib.LibraryRootFolder.FindItem(itemID); | 991 | assetRequestItem = lib.LibraryRootFolder.FindItem(itemID); |
994 | |||
995 | if (assetRequestItem == null) | 992 | if (assetRequestItem == null) |
996 | return false; | 993 | return false; |
997 | } | 994 | } |
@@ -1022,7 +1019,6 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
1022 | m_log.WarnFormat( | 1019 | m_log.WarnFormat( |
1023 | "[CLIENT]: {0} requested asset {1} from item {2} but this does not match item's asset {3}", | 1020 | "[CLIENT]: {0} requested asset {1} from item {2} but this does not match item's asset {3}", |
1024 | Name, requestID, itemID, assetRequestItem.AssetID); | 1021 | Name, requestID, itemID, assetRequestItem.AssetID); |
1025 | |||
1026 | return false; | 1022 | return false; |
1027 | } | 1023 | } |
1028 | 1024 | ||
diff --git a/OpenSim/Region/CoreModules/Framework/Library/LibraryModule.cs b/OpenSim/Region/CoreModules/Framework/Library/LibraryModule.cs index 2ef4457..d570608 100644 --- a/OpenSim/Region/CoreModules/Framework/Library/LibraryModule.cs +++ b/OpenSim/Region/CoreModules/Framework/Library/LibraryModule.cs | |||
@@ -185,7 +185,6 @@ namespace OpenSim.Region.CoreModules.Framework.Library | |||
185 | archread = new InventoryArchiveReadRequest(m_MockScene, uinfo, "/", iarFileName, false); | 185 | archread = new InventoryArchiveReadRequest(m_MockScene, uinfo, "/", iarFileName, false); |
186 | archread.Execute(); | 186 | archread.Execute(); |
187 | } | 187 | } |
188 | |||
189 | foreach (InventoryNodeBase node in nodes) | 188 | foreach (InventoryNodeBase node in nodes) |
190 | FixPerms(node); | 189 | FixPerms(node); |
191 | } | 190 | } |
@@ -198,23 +197,18 @@ namespace OpenSim.Region.CoreModules.Framework.Library | |||
198 | archread.Close(); | 197 | archread.Close(); |
199 | } | 198 | } |
200 | } | 199 | } |
200 | |||
201 | } | 201 | } |
202 | 202 | ||
203 | private void FixPerms(InventoryNodeBase node) | 203 | private void FixPerms(InventoryNodeBase node) |
204 | { | 204 | { |
205 | m_log.DebugFormat("[LIBRARY MODULE]: Fixing perms for {0} {1}", node.Name, node.ID); | ||
206 | |||
207 | if (node is InventoryItemBase) | 205 | if (node is InventoryItemBase) |
208 | { | 206 | { |
209 | InventoryItemBase item = (InventoryItemBase)node; | 207 | InventoryItemBase item = (InventoryItemBase)node; |
210 | // item.BasePermissions = (uint)PermissionMask.All; | ||
211 | item.BasePermissions = 0x7FFFFFFF; | 208 | item.BasePermissions = 0x7FFFFFFF; |
212 | item.EveryOnePermissions = 0x7FFFFFFF; | 209 | item.EveryOnePermissions = 0x7FFFFFFF; |
213 | item.CurrentPermissions = 0x7FFFFFFF; | 210 | item.CurrentPermissions = 0x7FFFFFFF; |
214 | item.NextPermissions = 0x7FFFFFFF; | 211 | item.NextPermissions = 0x7FFFFFFF; |
215 | // item.EveryOnePermissions = (uint)PermissionMask.Copy; | ||
216 | // item.CurrentPermissions = (uint)PermissionMask.None; | ||
217 | // item.NextPermissions = (uint)PermissionMask.All; | ||
218 | } | 212 | } |
219 | } | 213 | } |
220 | 214 | ||
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs index afc1a4f..30421d4 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs | |||
@@ -724,10 +724,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
724 | newName = item.Name; | 724 | newName = item.Name; |
725 | } | 725 | } |
726 | 726 | ||
727 | if (remoteClient.AgentId == oldAgentID | 727 | if (remoteClient.AgentId == oldAgentID || (LibraryService != null && LibraryService.LibraryRootFolder != null && oldAgentID == LibraryService.LibraryRootFolder.Owner)) |
728 | || (LibraryService != null | ||
729 | && LibraryService.LibraryRootFolder != null | ||
730 | && oldAgentID == LibraryService.LibraryRootFolder.Owner)) | ||
731 | { | 728 | { |
732 | CreateNewInventoryItem( | 729 | CreateNewInventoryItem( |
733 | remoteClient, item.CreatorId, item.CreatorData, newFolderID, newName, item.Flags, callbackID, asset, (sbyte)item.InvType, | 730 | remoteClient, item.CreatorId, item.CreatorData, newFolderID, newName, item.Flags, callbackID, asset, (sbyte)item.InvType, |