diff --git a/API.class b/API.class index 026ab141..d506b93d 100644 Binary files a/API.class and b/API.class differ diff --git a/API.java b/API.java index 36c1578a..54dcda99 100644 --- a/API.java +++ b/API.java @@ -76,6 +76,7 @@ class API public void process(String cmd, InetAddress ip, int port) throws Exception { + StringBuffer sb = new StringBuffer(); char buf[] = new char[MAXRECEIVESIZE]; int len = 0; @@ -89,7 +90,15 @@ System.out.println("Attempting to send '"+cmd+"' to "+ip.getHostAddress()+":"+po ps.flush(); InputStreamReader isr = new InputStreamReader(socket.getInputStream()); - len = isr.read(buf, 0, MAXRECEIVESIZE); + while (0x80085 > 0) + { + len = isr.read(buf, 0, MAXRECEIVESIZE); + if (len < 1) + break; + sb.append(buf, 0, len); + if (buf[len-1] == '\0') + break; + } closeAll(); } @@ -100,7 +109,7 @@ System.out.println("Attempting to send '"+cmd+"' to "+ip.getHostAddress()+":"+po return; } - String result = new String(buf, 0, len); + String result = sb.toString(); System.out.println("Answer='"+result+"'");