From 2cab4c6dedf64f2cf668e2f6d314b908fca4e640 Mon Sep 17 00:00:00 2001 From: mguessan Date: Tue, 13 Jul 2010 07:07:29 +0000 Subject: [PATCH] Fix regression in AbstractConnection: return null instead of empty string on closed connection git-svn-id: http://svn.code.sf.net/p/davmail/code/trunk@1179 3d1905a2-6b24-0410-a738-b14d5a86fcbd --- src/java/davmail/AbstractConnection.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/java/davmail/AbstractConnection.java b/src/java/davmail/AbstractConnection.java index 4419840b..1ecd3107 100644 --- a/src/java/davmail/AbstractConnection.java +++ b/src/java/davmail/AbstractConnection.java @@ -52,7 +52,7 @@ public class AbstractConnection extends Thread { } public String readLine() throws IOException { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); + ByteArrayOutputStream baos = null; int b; while ((b = read()) > -1) { if (b == '\r') { @@ -64,13 +64,21 @@ public class AbstractConnection extends Thread { } else if (b == '\n') { break; } + if (baos == null) { + baos = new ByteArrayOutputStream(); + } baos.write(b); } - return new String(baos.toByteArray(), encoding); + if (baos != null) { + return new String(baos.toByteArray(), encoding); + } else { + return null; + } } /** * Read byteSize bytes from inputStream, return content as String. + * * @param byteSize content size * @return content * @throws IOException on error @@ -81,6 +89,7 @@ public class AbstractConnection extends Thread { /** * Read byteSize bytes from inputStream, return content as byte array. + * * @param byteSize content size * @return content * @throws IOException on error