$NetBSD: patch-at,v 1.1 2005/12/03 17:04:23 adrianp Exp $

--- libicq2000-0.1/src/DirectClient.cpp.orig
+++ libicq2000-0.1/src/DirectClient.cpp
@@ -162,6 +162,7 @@
 
       m_recv.setLittleEndian();
       m_recv >> length;
+      if (length == 0) return; // short read, toss it back (nothing to do)
       if (length > Incoming_Packet_Limit) throw ParseException("Received too long incoming packet");
       if (m_recv.remains() < length) return; // waiting for more of the packet