THRIFT-1457 java: Capacity of TframedTransport write buffer is never reset
Patch: Arthur Meyer
diff --git a/lib/java/src/org/apache/thrift/TByteArrayOutputStream.java b/lib/java/src/org/apache/thrift/TByteArrayOutputStream.java
index 9ed83c0..1c37ecd 100644
--- a/lib/java/src/org/apache/thrift/TByteArrayOutputStream.java
+++ b/lib/java/src/org/apache/thrift/TByteArrayOutputStream.java
@@ -27,18 +27,29 @@
  *
  */
 public class TByteArrayOutputStream extends ByteArrayOutputStream {
+
+  private final int initialSize;
+
   public TByteArrayOutputStream(int size) {
     super(size);
+    this.initialSize = size;
   }
 
   public TByteArrayOutputStream() {
-    super();
+    this(32);
   }
 
   public byte[] get() {
     return buf;
   }
 
+  public void reset() {
+    super.reset();
+    if (buf.length > initialSize) {
+      buf = new byte[initialSize];
+    }
+  }
+
   public int len() {
     return count;
   }