aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Andre Eisenbach <eisenbach@google.com>2015-05-04 14:00:47 -0700
committerGravatar Brian Duff <bduff@google.com>2015-05-04 17:58:26 -0700
commit15bff99de644be9ebccb0c4cfbce9dceea273abe (patch)
treec97c0976febe12cbffdcee80b7cadc496f5dfb7b
parent16a283f7942be34eb47852832131dfef2d196f83 (diff)
Handle 0-length byte buffers in micro and nano protobufs
Change-Id: I845ee1ab1005d25c8d77a8c2ed801c0f7b7c847b
-rw-r--r--javanano/src/main/java/com/google/protobuf/nano/CodedInputByteBufferNano.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/javanano/src/main/java/com/google/protobuf/nano/CodedInputByteBufferNano.java b/javanano/src/main/java/com/google/protobuf/nano/CodedInputByteBufferNano.java
index 4b45c6d2..f3993155 100644
--- a/javanano/src/main/java/com/google/protobuf/nano/CodedInputByteBufferNano.java
+++ b/javanano/src/main/java/com/google/protobuf/nano/CodedInputByteBufferNano.java
@@ -236,6 +236,8 @@ public final class CodedInputByteBufferNano {
System.arraycopy(buffer, bufferPos, result, 0, size);
bufferPos += size;
return result;
+ } else if (size == 0) {
+ return WireFormatNano.EMPTY_BYTES;
} else {
// Slow path: Build a byte array first then copy it.
return readRawBytes(size);