From d81bc4b5f2819e998030156a0dafc24da1f596b8 Mon Sep 17 00:00:00 2001 From: Jeff Ames Date: Tue, 3 Mar 2009 17:39:57 +0000 Subject: Avoid NRE if client sends unrecognized packet type. --- OpenSim/Framework/PacketPool.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'OpenSim/Framework') diff --git a/OpenSim/Framework/PacketPool.cs b/OpenSim/Framework/PacketPool.cs index 9994fac..a4f7d96 100644 --- a/OpenSim/Framework/PacketPool.cs +++ b/OpenSim/Framework/PacketPool.cs @@ -27,13 +27,17 @@ using System; using System.Collections.Generic; +using System.Reflection; using OpenMetaverse; using OpenMetaverse.Packets; +using log4net; namespace OpenSim.Framework { public sealed class PacketPool { + private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); + private static readonly PacketPool instance = new PacketPool(); private bool packetPoolEnabled = false; @@ -119,7 +123,10 @@ namespace OpenSim.Framework int i = 0; Packet packet = GetPacket(type); - packet.FromBytes(bytes, ref i, ref packetEnd, zeroBuffer); + if (packet == null) + m_log.WarnFormat("[PACKETPOOL]: Failed to get packet of type {0}", type); + else + packet.FromBytes(bytes, ref i, ref packetEnd, zeroBuffer); return packet; } -- cgit v1.1