Vladimir, My simple tests on the RI show that passing null to ByteBuffer.order(ByteOrder) causes the order to be set to LITTLE_ENDIAN, or maybe even the opposite of the natural order.
This is the output from a simple test on my machine: Natural order = BIG_ENDIAN Set BE order = BIG_ENDIAN Set LE order = LITTLE_ENDIAN Set null order = LITTLE_ENDIAN Set BE order = BIG_ENDIAN Set null order = LITTLE_ENDIAN Harmony currently throws a NPE, and your proposed patch would leave the proposed order unmodified. The behavior of passing null is undefined in the spec, but it is possible that throwing an exception will break apps that inadvertently pass null to this method, so unless anyone objects I'll take null to mean LITTLE_ENDIAN. Regards, Tim Vladimir Ivanov (JIRA) wrote: > [classlib][nio] java.nio.ByteBuffer.order((ByteOrder) null) throws > unspecified NPE > ------------------------------------------------------------------------------------ > > Key: HARMONY-798 > URL: http://issues.apache.org/jira/browse/HARMONY-798 > Project: Harmony > Type: Bug > > Components: Classlib > Reporter: Vladimir Ivanov > > > The Harmony method java.nio.ByteBuffer.order(ByteOrder bo) throws > unspecified NPE for 'null' while RI does not. > > =================== test.java ========================= > import java.nio.*; > > public class test { > public static void main (String[] args) { > try { > ByteBuffer buf = ByteBuffer.wrap(new byte[10]); > System.out.println("buf = " + buf + ", order(null) = " + > buf.order(null)); > } catch (Exception e) { > e.printStackTrace(); > } > } > } > =================================================== > > Output: > C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -showversion test > java version "1.5.0" > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64) > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, > GC: System optimized over throughput (initial strategy singleparpar)) > > buf = java.nio.HeapByteBuffer[pos=0 lim=10 cap=10], order(null) = > java.nio.HeapByteBuffer[pos=0 lim=10 cap=10] > > C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -showversion > test > java version 1.5 (subset) > > (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as > applicable. > java.lang.NullPointerException > at java.nio.ByteBuffer.orderImpl(ByteBuffer.java:699) > at java.nio.ByteBuffer.order(ByteBuffer.java:694) > at test.main(test.java:7) > > -- Tim Ellison ([EMAIL PROTECTED]) IBM Java technology centre, UK. --------------------------------------------------------------------- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]