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.

Reply via email to