nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/objects/NativeArrayBuffer.java
changeset 30830 9d3a0827accd
parent 30512 aa86a08c6625
child 38485 8c55199bc96b
equal deleted inserted replaced
30736:ff3fc75f3214 30830:9d3a0827accd
   104 
   104 
   105         if (args.length == 0) {
   105         if (args.length == 0) {
   106             return new NativeArrayBuffer(0);
   106             return new NativeArrayBuffer(0);
   107         }
   107         }
   108 
   108 
   109         return new NativeArrayBuffer(JSType.toInt32(args[0]));
   109         final Object arg0 = args[0];
       
   110         if (arg0 instanceof ByteBuffer) {
       
   111             return new NativeArrayBuffer((ByteBuffer)arg0);
       
   112         } else {
       
   113             return new NativeArrayBuffer(JSType.toInt32(arg0));
       
   114         }
   110     }
   115     }
   111 
   116 
   112     private static ByteBuffer cloneBuffer(final ByteBuffer original, final int begin, final int end) {
   117     private static ByteBuffer cloneBuffer(final ByteBuffer original, final int begin, final int end) {
   113         final ByteBuffer clone = ByteBuffer.allocateDirect(original.capacity());
   118         final ByteBuffer clone = ByteBuffer.allocateDirect(original.capacity());
   114         original.rewind();//copy from the beginning
   119         original.rewind();//copy from the beginning