aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-09-18 18:37:55 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-09-18 18:37:55 -0700
commitdfefb05b10e57e01faab0d633fc9538a571a566f (patch)
tree1586bf177fab9d5897e0d18020dad107a6e8ba01 /src
parent55bdf2682c7718f283015f9434348276529a5cb0 (diff)
downloadbun-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.zig8
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));