#author("2023-12-31T04:47:19+00:00","default:iseki","iseki") *** オブジェクトのリスト更新でクラッシュ [#uac991e5] - Error Log 19:03:35 - [CLIENT]: Client thread for Fumi Hax 751c1531-03b5-48a9-8f2d-51a0527be7ca crashed. Logging them out. 19:03:35 - System.NullReferenceException: Object reference not set to an instance of an object at OpenMetaverse.Packets.ParcelObjectOwnersReplyPacket.get_Length () [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLPacketHandler.QueuePacket (OpenMetaverse.Packets.Packet packet, ThrottleOutPacketType throttlePacketType, System.Object id) [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLPacketHandler.OutPacket (OpenMetaverse.Packets.Packet packet, ThrottleOutPacketType throttlePacketType, System.Object id) [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLPacketHandler.OutPacket (OpenMetaverse.Packets.Packet packet, ThrottleOutPacketType throttlePacketType) [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLClientView.OutPacket (OpenMetaverse.Packets.Packet NewPack, ThrottleOutPacketType throttlePacketType) [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLClientView.SendLandObjectOwners (OpenSim.Framework.LandData land, System.Collections.Generic.List`1 groups, System.Collections.Generic.Dictionary`2 ownersAndCount) [0x00000] at OpenSim.Region.CoreModules.World.Land.LandObject.sendLandObjectOwners (IClientAPI remote_client) [0x00000] at OpenSim.Region.CoreModules.World.Land.LandManagementModule.handleParcelObjectOwnersRequest (Int32 local_id, IClientAPI remote_client) [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLClientView.ProcessInPacket (OpenMetaverse.Packets.Packet Pack) [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLPacketHandler.ProcessInPacket (OpenSim.Region.ClientStack.LindenUDP.LLQueItem item) [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLClientView.ClientLoop () [0x00000] at OpenSim.Region.ClientStack.LindenUDP.LLClientView.RunUserSession () [0x00000] #author("2023-12-31T04:50:14+00:00","default:iseki","iseki") - OpenSim/Region/ClientStack/LindenUDP/LLPacketHandler.cs - QueuePacket() の item.Length = packet.Length; で例外発生 - ParcelObjectOwnersReplyPacket には get_Length() が実装されていないと言うこと? - 原因不明だが,とりあえず,例外を catch して回避 private void QueuePacket( Packet packet, ThrottleOutPacketType throttlePacketType, Object id) { LLQueItem item = new LLQueItem(); item.Packet = packet; item.Incoming = false; item.throttleType = throttlePacketType; item.TickCount = Environment.TickCount; item.Identifier = id; item.Resends = 0; try { item.Length = packet.Length; } catch (Exception e) { item.Length = 0; } item.Sequence = packet.Header.Sequence; m_PacketQueue.Enqueue(item); m_PacketsSent++; }