diff options
author | 2022-09-18 18:37:55 -0700 | |
---|---|---|
committer | 2022-09-18 18:37:55 -0700 | |
commit | dfefb05b10e57e01faab0d633fc9538a571a566f (patch) | |
tree | 1586bf177fab9d5897e0d18020dad107a6e8ba01 /src | |
parent | 55bdf2682c7718f283015f9434348276529a5cb0 (diff) | |
download | bun-dfefb05b10e57e01faab0d633fc9538a571a566f.tar.gz bun-dfefb05b10e57e01faab0d633fc9538a571a566f.tar.zst bun-dfefb05b10e57e01faab0d633fc9538a571a566f.zip |
Fix occasional crash with .json()
Diffstat (limited to 'src')
-rw-r--r-- | src/bun.js/webcore/response.zig | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/bun.js/webcore/response.zig b/src/bun.js/webcore/response.zig index 525a02f22..1028f4aa9 100644 --- a/src/bun.js/webcore/response.zig +++ b/src/bun.js/webcore/response.zig @@ -4085,8 +4085,14 @@ pub const Body = struct { promise.asPromise().?.resolve(global, blob.getTextTransfer(global.ref())); }, .getJSON => { - promise.asPromise().?.resolve(global, blob.toJSON(global, .share)); + const json_value = blob.toJSON(global, .share); blob.detach(); + + if (json_value.isAnyError(global)) { + promise.asPromise().?.reject(global, json_value); + } else { + promise.asPromise().?.resolve(global, json_value); + } }, .getArrayBuffer => { promise.asPromise().?.resolve(global, blob.getArrayBufferTransfer(global)); |