diff --git a/net/infordata/em/tnprot/XITelnet.java b/net/infordata/em/tnprot/XITelnet.java index dfbbaf9..4e858e8 100644 --- a/net/infordata/em/tnprot/XITelnet.java +++ b/net/infordata/em/tnprot/XITelnet.java @@ -931,14 +931,24 @@ public class XITelnet { byte[] rBuf = new byte[1024]; int len = 0; int i, j; + int bclinf = 0; try { while(!ivTerminate) { try { len = ivIn.read(buf); + if (len == -1) { + ivTerminate = true; + break; + } } catch (InterruptedIOException iex) { //!!V 03/03/98 len = 0; + bclinf ++; + if (bclinf > 1200) { + ivTerminate = true; + break; + } } // process all IAC commands