You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ta...@apache.org on 2018/09/24 19:49:30 UTC

qpid-jms git commit: QPIDJMS-413 Fix improper calculation in the ReadableBuffer

Repository: qpid-jms
Updated Branches:
  refs/heads/master 740a3973c -> 1d7230e03


QPIDJMS-413 Fix improper calculation in the ReadableBuffer

Don't add reader index to the array offset for the underlying buffer.

Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/1d7230e0
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/1d7230e0
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/1d7230e0

Branch: refs/heads/master
Commit: 1d7230e032abf355d9e92778f07eae2609541041
Parents: 740a397
Author: Timothy Bish <ta...@gmail.com>
Authored: Mon Sep 24 15:44:33 2018 -0400
Committer: Timothy Bish <ta...@gmail.com>
Committed: Mon Sep 24 15:49:12 2018 -0400

----------------------------------------------------------------------
 .../provider/amqp/message/AmqpReadableBuffer.java    |  2 +-
 .../amqp/message/AmqpReadableBufferTest.java         | 15 +++++++++++++++
 2 files changed, 16 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1d7230e0/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBuffer.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBuffer.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBuffer.java
index 7f14bf4..6ae43bb 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBuffer.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBuffer.java
@@ -58,7 +58,7 @@ public class AmqpReadableBuffer implements ReadableBuffer {
 
     @Override
     public int arrayOffset() {
-        return buffer.arrayOffset() + buffer.readerIndex();
+        return buffer.arrayOffset();
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1d7230e0/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBufferTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBufferTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBufferTest.java
index 59bd371..fc5c99f 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBufferTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpReadableBufferTest.java
@@ -60,6 +60,21 @@ public class AmqpReadableBufferTest {
     }
 
     @Test
+    public void testArrayOffset() {
+        byte[] data = new byte[] {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
+        ByteBuf byteBuffer = Unpooled.wrappedBuffer(data, 5, 5);
+        AmqpReadableBuffer buffer = new AmqpReadableBuffer(byteBuffer);
+
+        assertTrue(buffer.hasArray());
+        assertSame(buffer.array(), byteBuffer.array());
+        assertEquals(buffer.arrayOffset(), byteBuffer.arrayOffset());
+
+        assertEquals(5, buffer.get());
+
+        assertEquals(buffer.arrayOffset(), byteBuffer.arrayOffset());
+    }
+
+    @Test
     public void testArrayAccessWhenNoArray() {
         ByteBuf byteBuffer = Unpooled.directBuffer();
         AmqpReadableBuffer buffer = new AmqpReadableBuffer(byteBuffer);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org