aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework
diff options
context:
space:
mode:
authorMelanie2010-09-24 23:48:52 +0200
committerMelanie2010-09-24 23:48:52 +0200
commit1c1f3080526ed3e4845b4e98488d1d0c327dabb3 (patch)
tree74cdc7bceff8dde28e351358ba9b3f9dbf00ae4b /OpenSim/Region/Framework
parentWhen clearing the addin registry, respect a custom path (diff)
downloadopensim-SC-1c1f3080526ed3e4845b4e98488d1d0c327dabb3.zip
opensim-SC-1c1f3080526ed3e4845b4e98488d1d0c327dabb3.tar.gz
opensim-SC-1c1f3080526ed3e4845b4e98488d1d0c327dabb3.tar.bz2
opensim-SC-1c1f3080526ed3e4845b4e98488d1d0c327dabb3.tar.xz
if you can't edit a prim's inventory, you don't need to see the asset ids.
Prevents stealing IDs of animations, sounds and textures from prim inventories. Prevents copybot from gathering the wearable UUIDs needed for pirating things from vendors.
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs9
1 files changed, 8 insertions, 1 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
index 8aa17a1..9359aea 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
@@ -975,6 +975,10 @@ namespace OpenSim.Region.Framework.Scenes
975 // isn't available (such as drag from prim inventory to agent inventory) 975 // isn't available (such as drag from prim inventory to agent inventory)
976 InventoryStringBuilder invString = new InventoryStringBuilder(m_part.UUID, UUID.Zero); 976 InventoryStringBuilder invString = new InventoryStringBuilder(m_part.UUID, UUID.Zero);
977 977
978 bool includeAssets = false;
979 if (m_part.ParentGroup.Scene.Permissions.CanEditObjectInventory(m_part.UUID, client.AgentId))
980 includeAssets = true;
981
978 m_items.LockItemsForRead(true); 982 m_items.LockItemsForRead(true);
979 983
980 foreach (TaskInventoryItem item in m_items.Values) 984 foreach (TaskInventoryItem item in m_items.Values)
@@ -1005,7 +1009,10 @@ namespace OpenSim.Region.Framework.Scenes
1005 invString.AddNameValueLine("group_id", item.GroupID.ToString()); 1009 invString.AddNameValueLine("group_id", item.GroupID.ToString());
1006 invString.AddSectionEnd(); 1010 invString.AddSectionEnd();
1007 1011
1008 invString.AddNameValueLine("asset_id", item.AssetID.ToString()); 1012 if (includeAssets)
1013 invString.AddNameValueLine("asset_id", item.AssetID.ToString());
1014 else
1015 invString.AddNameValueLine("asset_id", UUID.Zero.ToString());
1009 invString.AddNameValueLine("type", TaskInventoryItem.Types[item.Type]); 1016 invString.AddNameValueLine("type", TaskInventoryItem.Types[item.Type]);
1010 invString.AddNameValueLine("inv_type", TaskInventoryItem.InvTypes[item.InvType]); 1017 invString.AddNameValueLine("inv_type", TaskInventoryItem.InvTypes[item.InvType]);
1011 invString.AddNameValueLine("flags", Utils.UIntToHexString(item.Flags)); 1018 invString.AddNameValueLine("flags", Utils.UIntToHexString(item.Flags));