diff options
Diffstat (limited to 'OpenSim/Region/ClientStack/Linden')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index ea3c6a4..edb1a9d 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -3992,7 +3992,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
3992 | 3992 | ||
3993 | const float TIME_DILATION = 1.0f; | 3993 | const float TIME_DILATION = 1.0f; |
3994 | ushort timeDilation = Utils.FloatToUInt16(avgTimeDilation, 0.0f, 1.0f); | 3994 | ushort timeDilation = Utils.FloatToUInt16(avgTimeDilation, 0.0f, 1.0f); |
3995 | |||
3996 | 3995 | ||
3997 | if (terseAgentUpdateBlocks.IsValueCreated) | 3996 | if (terseAgentUpdateBlocks.IsValueCreated) |
3998 | { | 3997 | { |
@@ -11695,14 +11694,30 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
11695 | cachedresp.WearableData = | 11694 | cachedresp.WearableData = |
11696 | new AgentCachedTextureResponsePacket.WearableDataBlock[cachedtex.WearableData.Length]; | 11695 | new AgentCachedTextureResponsePacket.WearableDataBlock[cachedtex.WearableData.Length]; |
11697 | 11696 | ||
11698 | for (int i = 0; i < cachedtex.WearableData.Length; i++) | 11697 | IImprovedAssetCache cache = m_scene.RequestModuleInterface<IImprovedAssetCache>(); |
11698 | if (cache == null) | ||
11699 | { | 11699 | { |
11700 | cachedresp.WearableData[i] = new AgentCachedTextureResponsePacket.WearableDataBlock(); | 11700 | for (int i = 0; i < cachedtex.WearableData.Length; i++) |
11701 | cachedresp.WearableData[i].TextureIndex = cachedtex.WearableData[i].TextureIndex; | 11701 | { |
11702 | cachedresp.WearableData[i].TextureID = UUID.Zero; | 11702 | cachedresp.WearableData[i] = new AgentCachedTextureResponsePacket.WearableDataBlock(); |
11703 | cachedresp.WearableData[i].HostName = new byte[0]; | 11703 | cachedresp.WearableData[i].TextureIndex = cachedtex.WearableData[i].TextureIndex; |
11704 | cachedresp.WearableData[i].TextureID = UUID.Zero; | ||
11705 | cachedresp.WearableData[i].HostName = new byte[0]; | ||
11706 | } | ||
11707 | } | ||
11708 | else | ||
11709 | { | ||
11710 | for (int i = 0; i < cachedtex.WearableData.Length; i++) | ||
11711 | { | ||
11712 | cachedresp.WearableData[i] = new AgentCachedTextureResponsePacket.WearableDataBlock(); | ||
11713 | cachedresp.WearableData[i].TextureIndex = cachedtex.WearableData[i].TextureIndex; | ||
11714 | if(cache.Check(cachedtex.WearableData[i].ID.ToString())) | ||
11715 | cachedresp.WearableData[i].TextureID = UUID.Zero; | ||
11716 | else | ||
11717 | cachedresp.WearableData[i].TextureID = UUID.Zero; | ||
11718 | cachedresp.WearableData[i].HostName = new byte[0]; | ||
11719 | } | ||
11704 | } | 11720 | } |
11705 | |||
11706 | cachedresp.Header.Zerocoded = true; | 11721 | cachedresp.Header.Zerocoded = true; |
11707 | OutPacket(cachedresp, ThrottleOutPacketType.Task); | 11722 | OutPacket(cachedresp, ThrottleOutPacketType.Task); |
11708 | 11723 | ||