aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorSean Dague2007-11-30 20:16:40 +0000
committerSean Dague2007-11-30 20:16:40 +0000
commitb167507e323a2f0162aa3106ab63d8cf2a5f57ae (patch)
tree420d2bedeb40a9f7b6e4b3da8d98af91d59f15f3 /OpenSim/Region
parent*Refactored the initial raytracer so it doesn't use the Parent reference. (diff)
downloadopensim-SC-b167507e323a2f0162aa3106ab63d8cf2a5f57ae.zip
opensim-SC-b167507e323a2f0162aa3106ab63d8cf2a5f57ae.tar.gz
opensim-SC-b167507e323a2f0162aa3106ab63d8cf2a5f57ae.tar.bz2
opensim-SC-b167507e323a2f0162aa3106ab63d8cf2a5f57ae.tar.xz
Patch for mantis 0000015: Textures don't display in the object
properties window From Justin Casey (IBM)
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ClientStack/ClientView.cs22
-rw-r--r--OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs2
2 files changed, 20 insertions, 4 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs
index 90002c3..86efac1 100644
--- a/OpenSim/Region/ClientStack/ClientView.cs
+++ b/OpenSim/Region/ClientStack/ClientView.cs
@@ -1031,7 +1031,16 @@ namespace OpenSim.Region.ClientStack
1031 OutPacket(kill, ThrottleOutPacketType.Task); 1031 OutPacket(kill, ThrottleOutPacketType.Task);
1032 } 1032 }
1033 1033
1034 public void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items) 1034 /// <summary>
1035 /// Send information about the items contained in a folder to the client.
1036 /// </summary>
1037 /// <param name="ownerID">The owner of the folder</param>
1038 /// <param name="folderID">The id of the folder</param>
1039 /// <param name="items">The items contained in the folder identified by folderID</param>
1040 /// <param name="subFoldersCount">The number of subfolders contained in the given folder. This is necessary since
1041 /// the client is expecting inventory packets which incorporate this number into the descendents field, even though
1042 /// we send back no details of the folders themselves (only the items).</param>
1043 public void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items, int subFoldersCount)
1035 { 1044 {
1036 Encoding enc = Encoding.ASCII; 1045 Encoding enc = Encoding.ASCII;
1037 uint FULL_MASK_PERMISSIONS = 2147483647; 1046 uint FULL_MASK_PERMISSIONS = 2147483647;
@@ -1041,13 +1050,20 @@ namespace OpenSim.Region.ClientStack
1041 if (items.Count < 40) 1050 if (items.Count < 40)
1042 { 1051 {
1043 descend.ItemData = new InventoryDescendentsPacket.ItemDataBlock[items.Count]; 1052 descend.ItemData = new InventoryDescendentsPacket.ItemDataBlock[items.Count];
1044 descend.AgentData.Descendents = items.Count; 1053 // In the very first packet, also include the sub folders count so that the total descendents the
1054 // client receives matches its expectations. Subsequent inventory packets need contain only the count
1055 // of the number of items actually in them.
1056 descend.AgentData.Descendents = items.Count + subFoldersCount;
1045 } 1057 }
1046 else 1058 else
1047 { 1059 {
1048 descend.ItemData = new InventoryDescendentsPacket.ItemDataBlock[40]; 1060 descend.ItemData = new InventoryDescendentsPacket.ItemDataBlock[40];
1049 descend.AgentData.Descendents = 40; 1061 // In the very first packet, also include the sub folders count so that the total descendents the
1062 // client receives matches its expectations. Subsequent inventory packets need contain only the count
1063 // of the number of items actually in them.
1064 descend.AgentData.Descendents = 40 + subFoldersCount;
1050 } 1065 }
1066
1051 int i = 0; 1067 int i = 0;
1052 foreach (InventoryItemBase item in items) 1068 foreach (InventoryItemBase item in items)
1053 { 1069 {
diff --git a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs
index 56316e6..77a287a 100644
--- a/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleApp/MyNpcCharacter.cs
@@ -301,7 +301,7 @@ namespace SimpleApp
301 { 301 {
302 } 302 }
303 303
304 public virtual void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items) 304 public virtual void SendInventoryFolderDetails(LLUUID ownerID, LLUUID folderID, List<InventoryItemBase> items, int subFoldersCount)
305 { 305 {
306 } 306 }
307 307