You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by je...@apache.org on 2020/07/07 20:18:42 UTC

[thrift] branch master updated: THRIFT-5247 Avoiding meaningless System.copy Client: java Patch: Zezeng Wang

This is an automated email from the ASF dual-hosted git repository.

jensg pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/thrift.git


The following commit(s) were added to refs/heads/master by this push:
     new eb45c2a  THRIFT-5247 Avoiding meaningless System.copy Client: java Patch: Zezeng Wang
eb45c2a is described below

commit eb45c2a1e48cc50f70298a34702fb365c61b489d
Author: zeshuai007 <51...@qq.com>
AuthorDate: Mon Jul 6 16:53:47 2020 +0800

    THRIFT-5247 Avoiding meaningless System.copy
    Client: java
    Patch: Zezeng Wang
    
    This closes #2196
---
 .../apache/thrift/transport/AutoExpandingBufferReadTransport.java  | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/lib/java/src/org/apache/thrift/transport/AutoExpandingBufferReadTransport.java b/lib/java/src/org/apache/thrift/transport/AutoExpandingBufferReadTransport.java
index a28d254..d06fec7 100644
--- a/lib/java/src/org/apache/thrift/transport/AutoExpandingBufferReadTransport.java
+++ b/lib/java/src/org/apache/thrift/transport/AutoExpandingBufferReadTransport.java
@@ -51,8 +51,10 @@ public class AutoExpandingBufferReadTransport extends TTransport {
   @Override
   public final int read(byte[] target, int off, int len) throws TTransportException {
     int amtToRead = Math.min(len, getBytesRemainingInBuffer());
-    System.arraycopy(buf.array(), pos, target, off, amtToRead);
-    consumeBuffer(amtToRead);
+    if(amtToRead > 0){
+      System.arraycopy(buf.array(), pos, target, off, amtToRead);
+      consumeBuffer(amtToRead);
+    }
     return amtToRead;
   }
 
@@ -81,4 +83,3 @@ public class AutoExpandingBufferReadTransport extends TTransport {
     return limit - pos;
   }
 }
-  
\ No newline at end of file