aboutsummaryrefslogtreecommitdiff
path: root/src/javascript
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2022-05-09 21:53:44 -0700
committerGravatar Jarred Sumner <jarred@jarredsumner.com> 2022-05-09 21:53:44 -0700
commit29b9ced11ace31d8049cfa159f875e90aba257b6 (patch)
treec52615f39c43094d909b0fa173d93b048a4fe730 /src/javascript
parent8ac108ba06fff666ce3257d3c64b694b7a2c6338 (diff)
downloadbun-29b9ced11ace31d8049cfa159f875e90aba257b6.tar.gz
bun-29b9ced11ace31d8049cfa159f875e90aba257b6.tar.zst
bun-29b9ced11ace31d8049cfa159f875e90aba257b6.zip
Update bindings.cpp
Diffstat (limited to 'src/javascript')
-rw-r--r--src/javascript/jsc/bindings/bindings.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/javascript/jsc/bindings/bindings.cpp b/src/javascript/jsc/bindings/bindings.cpp
index ef1d78e27..7c190153f 100644
--- a/src/javascript/jsc/bindings/bindings.cpp
+++ b/src/javascript/jsc/bindings/bindings.cpp
@@ -306,13 +306,15 @@ JSC__JSValue SystemError__toErrorInstance(const SystemError* arg0,
JSC::JSValue options = JSC::jsUndefined();
- JSC::Structure* errorStructure = globalObject->errorStructure();
- JSC::JSObject* result = JSC::ErrorInstance::create(globalObject, errorStructure, message, options);
+ Structure* errorStructure = JSC_GET_DERIVED_STRUCTURE(vm, errorStructure, globalObject->errorPrototype(), globalObject->errorPrototype());
+
+ JSC::JSObject* result
+ = JSC::ErrorInstance::create(globalObject, errorStructure, message, options);
auto clientData = WebCore::clientData(vm);
- if (err.code.len > 0) {
- JSC::JSValue code = Zig::toJSString(err.code, globalObject);
+ if (err.code.len > 0 && !(err.code.len == 1 and err.code.ptr[0] == 0)) {
+ JSC::JSValue code = Zig::toJSStringGC(err.code, globalObject);
result->putDirect(vm, clientData->builtinNames().codePublicName(), code,
JSC::PropertyAttribute::DontDelete | 0);