aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/bun.js/api/server.zig12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/bun.js/api/server.zig b/src/bun.js/api/server.zig
index 783b1d777..1af7a5e31 100644
--- a/src/bun.js/api/server.zig
+++ b/src/bun.js/api/server.zig
@@ -2150,7 +2150,17 @@ pub fn NewServer(comptime ssl_enabled_: bool, comptime debug_mode_: bool) type {
if (response_value.as(JSC.WebCore.Response)) |response| {
ctx.response_jsvalue = response_value;
ctx.response_jsvalue.ensureStillAlive();
- response_value.protect();
+ switch (response.body.value) {
+ .Blob => |*blob| {
+ if (blob.needsToReadFile()) {
+ response_value.protect();
+ }
+ },
+ .Locked => {
+ response_value.protect();
+ },
+ else => {},
+ }
ctx.render(response);
return;
}