You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2011/02/01 18:45:42 UTC

svn commit: r1066099 - /cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/utils/ByteBufferUtil.java

Author: jbellis
Date: Tue Feb  1 17:45:42 2011
New Revision: 1066099

URL: http://svn.apache.org/viewvc?rev=1066099&view=rev
Log:
replace isDirect with !hasArray for correctness

Modified:
    cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/utils/ByteBufferUtil.java

Modified: cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/utils/ByteBufferUtil.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/utils/ByteBufferUtil.java?rev=1066099&r1=1066098&r2=1066099&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/utils/ByteBufferUtil.java (original)
+++ cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/utils/ByteBufferUtil.java Tue Feb  1 17:45:42 2011
@@ -209,17 +209,15 @@ public class ByteBufferUtil
           
         ByteBuffer clone = ByteBuffer.allocate(o.remaining());
 
-        if (o.isDirect())
+        if (o.hasArray())
         {
-            for (int i = o.position(); i < o.limit(); i++)
-            {
-                clone.put(o.get(i));
-            }
-            clone.flip();
+            System.arraycopy(o.array(), o.arrayOffset() + o.position(), clone.array(), 0, o.remaining());
         }
         else
         {
-            System.arraycopy(o.array(), o.arrayOffset() + o.position(), clone.array(), 0, o.remaining());
+            for (int i = o.position(); i < o.limit(); i++)
+                clone.put(o.get(i));
+            clone.flip();
         }
 
         return clone;