From f852b6455550569d002d0b1c527249f3f7894326 Mon Sep 17 00:00:00 2001 From: Teravus Ovares Date: Wed, 26 Dec 2007 17:16:47 +0000 Subject: * This update includes a wide range of changes to the ODEPlugin for avatar movement, including: ** - avatar can navigate stairs better now ** - avatar can land without shooting into the air ** - excessive collisions with the ground are tempered somewhat and should only shoot the avatar up 20m instead of 200m ** - Try Catched a TextureDownloadModule.cs array out of bounds error with a report that causes it not to crash the sim, however it reports a few important items for tracking it down. --- OpenSim/Region/Environment/Modules/TextureDownloadModule.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'OpenSim/Region/Environment/Modules/TextureDownloadModule.cs') diff --git a/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs b/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs index d126569..0adace1 100644 --- a/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs +++ b/OpenSim/Region/Environment/Modules/TextureDownloadModule.cs @@ -319,7 +319,15 @@ namespace OpenSim.Region.Environment.Modules int size = m_asset.Data.Length - 600 - (1000 * (PacketCounter - 1)); if (size > 1000) size = 1000; im.ImageData.Data = new byte[size]; - Array.Copy(m_asset.Data, 600 + (1000 * (PacketCounter - 1)), im.ImageData.Data, 0, size); + try + { + Array.Copy(m_asset.Data, 600 + (1000 * (PacketCounter - 1)), im.ImageData.Data, 0, size); + } + catch (System.ArgumentOutOfRangeException) + { + OpenSim.Framework.Console.MainLog.Instance.Warn("TEXTURE", "Unable to separate texture into multiple packets: Array bounds failure on asset:" + m_asset.FullID.ToString() + "- TextureDownloadModule.cs. line:328"); + return; + } RequestUser.OutPacket(im, ThrottleOutPacketType.Texture); PacketCounter++; } -- cgit v1.1