From ed421855d70c64f55a5cb15a1a46798457697d3e Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Sat, 21 Jan 2023 04:06:06 -0800 Subject: [buffer] Add faster path for Uint8Array --- src/bun.js/builtins/js/JSBufferConstructor.js | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/bun.js/builtins/js/JSBufferConstructor.js') diff --git a/src/bun.js/builtins/js/JSBufferConstructor.js b/src/bun.js/builtins/js/JSBufferConstructor.js index 9f61220cc..4c3650360 100644 --- a/src/bun.js/builtins/js/JSBufferConstructor.js +++ b/src/bun.js/builtins/js/JSBufferConstructor.js @@ -36,6 +36,12 @@ function from(items) { "The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object.", ); + if (@argumentCount() === 1 && @isTypedArrayView(items)) { + var out = this.allocUnsafe(items.byteLength); + out.copy(items); + return out; + } + // TODO: figure out why private symbol not found if ( typeof items === "string" || -- cgit v1.2.3