diff options
Diffstat (limited to 'OpenSim.RegionServer/Assets')
-rw-r--r-- | OpenSim.RegionServer/Assets/AssetCache.cs | 9 | ||||
-rw-r--r-- | OpenSim.RegionServer/Assets/InventoryCache.cs | 36 |
2 files changed, 37 insertions, 8 deletions
diff --git a/OpenSim.RegionServer/Assets/AssetCache.cs b/OpenSim.RegionServer/Assets/AssetCache.cs index f7f2e10..4149cb2 100644 --- a/OpenSim.RegionServer/Assets/AssetCache.cs +++ b/OpenSim.RegionServer/Assets/AssetCache.cs | |||
@@ -145,15 +145,12 @@ namespace OpenSim.Assets | |||
145 | num = 5; | 145 | num = 5; |
146 | } | 146 | } |
147 | AssetRequest req; | 147 | AssetRequest req; |
148 | Console.WriteLine("processing texture requests ( " + num + " )"); | ||
149 | for (int i = 0; i < num; i++) | 148 | for (int i = 0; i < num; i++) |
150 | { | 149 | { |
151 | req = (AssetRequest)this.TextureRequests[i]; | 150 | req = (AssetRequest)this.TextureRequests[i]; |
152 | if (req.PacketCounter != req.NumPackets) | 151 | if (req.PacketCounter != req.NumPackets) |
153 | { | 152 | { |
154 | // if (req.ImageInfo.FullID == new LLUUID("00000000-0000-0000-5005-000000000005")) | 153 | |
155 | Console.WriteLine("sending base texture ( " + req.ImageInfo.FullID + " ) in " + req.NumPackets + "number of packets"); | ||
156 | |||
157 | if (req.PacketCounter == 0) | 154 | if (req.PacketCounter == 0) |
158 | { | 155 | { |
159 | //first time for this request so send imagedata packet | 156 | //first time for this request so send imagedata packet |
@@ -227,7 +224,6 @@ namespace OpenSim.Assets | |||
227 | } | 224 | } |
228 | public void AssetReceived(AssetBase asset, bool IsTexture) | 225 | public void AssetReceived(AssetBase asset, bool IsTexture) |
229 | { | 226 | { |
230 | Console.WriteLine("received asset from asset server ( " + asset.FullID + " )"); | ||
231 | if (asset.FullID != LLUUID.Zero) // if it is set to zero then the asset wasn't found by the server | 227 | if (asset.FullID != LLUUID.Zero) // if it is set to zero then the asset wasn't found by the server |
232 | { | 228 | { |
233 | //check if it is a texture or not | 229 | //check if it is a texture or not |
@@ -433,9 +429,6 @@ namespace OpenSim.Assets | |||
433 | /// <param name="imageID"></param> | 429 | /// <param name="imageID"></param> |
434 | public void AddTextureRequest(SimClient userInfo, LLUUID imageID) | 430 | public void AddTextureRequest(SimClient userInfo, LLUUID imageID) |
435 | { | 431 | { |
436 | if (imageID == new LLUUID("00000000-0000-0000-5005-000000000005")) | ||
437 | Console.WriteLine("request base prim texture "); | ||
438 | |||
439 | //check to see if texture is in local cache, if not request from asset server | 432 | //check to see if texture is in local cache, if not request from asset server |
440 | if (!this.Textures.ContainsKey(imageID)) | 433 | if (!this.Textures.ContainsKey(imageID)) |
441 | { | 434 | { |
diff --git a/OpenSim.RegionServer/Assets/InventoryCache.cs b/OpenSim.RegionServer/Assets/InventoryCache.cs index 0788db2..e4d0a90 100644 --- a/OpenSim.RegionServer/Assets/InventoryCache.cs +++ b/OpenSim.RegionServer/Assets/InventoryCache.cs | |||
@@ -84,6 +84,11 @@ namespace OpenSim.Assets | |||
84 | if (this._agentsInventory.ContainsKey(remoteClient.AgentID)) | 84 | if (this._agentsInventory.ContainsKey(remoteClient.AgentID)) |
85 | { | 85 | { |
86 | newItem = this._agentsInventory[remoteClient.AgentID].AddToInventory(folderID, asset); | 86 | newItem = this._agentsInventory[remoteClient.AgentID].AddToInventory(folderID, asset); |
87 | if (newItem != null) | ||
88 | { | ||
89 | InventoryItem Item = this._agentsInventory[remoteClient.AgentID].InventoryItems[newItem]; | ||
90 | this.SendItemUpdateCreate(remoteClient, Item); | ||
91 | } | ||
87 | } | 92 | } |
88 | 93 | ||
89 | return newItem; | 94 | return newItem; |
@@ -185,6 +190,37 @@ namespace OpenSim.Assets | |||
185 | } | 190 | } |
186 | } | 191 | } |
187 | } | 192 | } |
193 | private void SendItemUpdateCreate(SimClient remoteClient, InventoryItem Item) | ||
194 | { | ||
195 | |||
196 | UpdateCreateInventoryItemPacket InventoryReply = new UpdateCreateInventoryItemPacket(); | ||
197 | InventoryReply.AgentData.AgentID = remoteClient.AgentID; | ||
198 | InventoryReply.AgentData.SimApproved = true; | ||
199 | InventoryReply.InventoryData = new UpdateCreateInventoryItemPacket.InventoryDataBlock[1]; | ||
200 | InventoryReply.InventoryData[0] = new UpdateCreateInventoryItemPacket.InventoryDataBlock(); | ||
201 | InventoryReply.InventoryData[0].ItemID = Item.ItemID; | ||
202 | InventoryReply.InventoryData[0].AssetID = Item.AssetID; | ||
203 | InventoryReply.InventoryData[0].CreatorID = Item.CreatorID; | ||
204 | InventoryReply.InventoryData[0].BaseMask = FULL_MASK_PERMISSIONS; | ||
205 | InventoryReply.InventoryData[0].CreationDate = 1000; | ||
206 | InventoryReply.InventoryData[0].Description = _enc.GetBytes(Item.Description + "\0"); | ||
207 | InventoryReply.InventoryData[0].EveryoneMask = FULL_MASK_PERMISSIONS; | ||
208 | InventoryReply.InventoryData[0].Flags = 1; | ||
209 | InventoryReply.InventoryData[0].FolderID = Item.FolderID; | ||
210 | InventoryReply.InventoryData[0].GroupID = new LLUUID("00000000-0000-0000-0000-000000000000"); | ||
211 | InventoryReply.InventoryData[0].GroupMask = FULL_MASK_PERMISSIONS; | ||
212 | InventoryReply.InventoryData[0].InvType = Item.InvType; | ||
213 | InventoryReply.InventoryData[0].Name = _enc.GetBytes(Item.Name + "\0"); | ||
214 | InventoryReply.InventoryData[0].NextOwnerMask = FULL_MASK_PERMISSIONS; | ||
215 | InventoryReply.InventoryData[0].OwnerID = Item.OwnerID; | ||
216 | InventoryReply.InventoryData[0].OwnerMask = FULL_MASK_PERMISSIONS; | ||
217 | InventoryReply.InventoryData[0].SalePrice = 100; | ||
218 | InventoryReply.InventoryData[0].SaleType = 0; | ||
219 | InventoryReply.InventoryData[0].Type = Item.Type; | ||
220 | InventoryReply.InventoryData[0].CRC = libsecondlife.Helpers.InventoryCRC(1000, 0, InventoryReply.InventoryData[0].InvType, InventoryReply.InventoryData[0].Type, InventoryReply.InventoryData[0].AssetID, InventoryReply.InventoryData[0].GroupID, 100, InventoryReply.InventoryData[0].OwnerID, InventoryReply.InventoryData[0].CreatorID, InventoryReply.InventoryData[0].ItemID, InventoryReply.InventoryData[0].FolderID, FULL_MASK_PERMISSIONS, 1, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS, FULL_MASK_PERMISSIONS); | ||
221 | |||
222 | remoteClient.OutPacket(InventoryReply); | ||
223 | } | ||
188 | } | 224 | } |
189 | 225 | ||
190 | 226 | ||