diff options
Diffstat (limited to 'src/bun.js/builtins/cpp/JSBufferConstructorBuiltins.cpp')
-rw-r--r-- | src/bun.js/builtins/cpp/JSBufferConstructorBuiltins.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/bun.js/builtins/cpp/JSBufferConstructorBuiltins.cpp b/src/bun.js/builtins/cpp/JSBufferConstructorBuiltins.cpp index 213060f58..7025ea8b8 100644 --- a/src/bun.js/builtins/cpp/JSBufferConstructorBuiltins.cpp +++ b/src/bun.js/builtins/cpp/JSBufferConstructorBuiltins.cpp @@ -51,7 +51,7 @@ namespace WebCore { const JSC::ConstructAbility s_jsBufferConstructorFromCodeConstructAbility = JSC::ConstructAbility::CannotConstruct; const JSC::ConstructorKind s_jsBufferConstructorFromCodeConstructorKind = JSC::ConstructorKind::None; const JSC::ImplementationVisibility s_jsBufferConstructorFromCodeImplementationVisibility = JSC::ImplementationVisibility::Public; -const int s_jsBufferConstructorFromCodeLength = 1832; +const int s_jsBufferConstructorFromCodeLength = 1984; static const JSC::Intrinsic s_jsBufferConstructorFromCodeIntrinsic = JSC::NoIntrinsic; const char* const s_jsBufferConstructorFromCode = "(function (items) {\n" \ @@ -65,6 +65,12 @@ const char* const s_jsBufferConstructorFromCode = " \"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object.\",\n" \ " );\n" \ "\n" \ + " if (@argumentCount() === 1 && @isTypedArrayView(items)) {\n" \ + " var out = this.allocUnsafe(items.byteLength);\n" \ + " out.copy(items);\n" \ + " return out;\n" \ + " }\n" \ + "\n" \ " //\n" \ " if (\n" \ " typeof items === \"string\" ||\n" \ |