diff options
author | 2023-01-24 00:57:03 -0800 | |
---|---|---|
committer | 2023-01-24 00:57:03 -0800 | |
commit | 4ea104f5bd2cef425051571dadf876d51a024d00 (patch) | |
tree | ac936f0b9ad76d7d491647ea974717eb3d75ebeb /src/bun.js/bindings/JSBuffer.cpp | |
parent | 0fe7f7b6f02b006d7fd733ab494ad433e85acd69 (diff) | |
download | bun-4ea104f5bd2cef425051571dadf876d51a024d00.tar.gz bun-4ea104f5bd2cef425051571dadf876d51a024d00.tar.zst bun-4ea104f5bd2cef425051571dadf876d51a024d00.zip |
Fix canary bug
Diffstat (limited to 'src/bun.js/bindings/JSBuffer.cpp')
-rw-r--r-- | src/bun.js/bindings/JSBuffer.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/bun.js/bindings/JSBuffer.cpp b/src/bun.js/bindings/JSBuffer.cpp index 5830f731e..f7b1a6ac0 100644 --- a/src/bun.js/bindings/JSBuffer.cpp +++ b/src/bun.js/bindings/JSBuffer.cpp @@ -1978,8 +1978,11 @@ JSC_DEFINE_HOST_FUNCTION(constructJSBuffer, (JSC::JSGlobalObject * lexicalGlobal for (size_t i = 1; i < argsCount; ++i) args.append(callFrame->uncheckedArgument(i)); - JSC::CallData callData = JSC::getCallData(constructor); - JSC::JSObject* object = JSC::construct(lexicalGlobalObject, constructor, callData, args, globalObject->JSBufferConstructor()); + JSValue target = callFrame->newTarget(); + if (!target) { + target = globalObject->JSBufferConstructor(); + } + JSC::JSObject* object = JSC::construct(lexicalGlobalObject, constructor, target, args, "Buffer failed to construct"_s); if (!object) { return JSC::JSValue::encode({}); } |