Use of ByteBuffer limit() must account for arrayOffset()
---------------------------------------------------------
Key: CASSANDRA-1661
URL: https://issues.apache.org/jira/browse/CASSANDRA-1661
Project: Cassandra
Issue Type: Bug
Components: Core
Affects Versions: 0.7.0
Reporter: T Jake Luciani
Assignee: T Jake Luciani
Fix For: 0.7.0
There are a few places in the code where it loops across a byte buffers backing
array wrong:
for (int i=bytes.position()+bytes.arrayOffset(); i<bytes.limit(); i++)
This is incorrect as the limit() does not account for arrayOffset()
for (int i=bytes.position()+bytes.arrayOffset();
i<bytes.limit()+bytes.arrayOffset(); i++)
is the correct code.
There is also a few places where the unit tests would fail if we used non
wrapped byte arrays.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.