aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Ciro Spaciari <ciro.spaciari@gmail.com> 2023-03-02 16:48:11 -0300
committerGravatar GitHub <noreply@github.com> 2023-03-02 11:48:11 -0800
commit156c1d4bec17338e791b99a792f2458643a1d84c (patch)
treeb9ebad7ebf82d31abc8b738ac74379d6ff5f90ba /src
parent20930849ce0bcfe685e8042a4a53d9c9dd67343b (diff)
downloadbun-156c1d4bec17338e791b99a792f2458643a1d84c.tar.gz
bun-156c1d4bec17338e791b99a792f2458643a1d84c.tar.zst
bun-156c1d4bec17338e791b99a792f2458643a1d84c.zip
only free sink after promises solves (#2268)
Diffstat (limited to 'src')
-rw-r--r--src/bun.js/api/server.zig18
-rw-r--r--src/bun.js/webcore/streams.zig2
2 files changed, 10 insertions, 10 deletions
diff --git a/src/bun.js/api/server.zig b/src/bun.js/api/server.zig
index 5e2604983..8b4413737 100644
--- a/src/bun.js/api/server.zig
+++ b/src/bun.js/api/server.zig
@@ -1033,10 +1033,7 @@ fn NewRequestContext(comptime ssl_enabled: bool, comptime debug_mode: bool, comp
//if have sink, call onAborted on sink
if (this.sink) |wrapper| {
- wrapper.detach();
- wrapper.sink.onAborted(resp);
- this.sink = null;
- wrapper.sink.destroy();
+ wrapper.sink.abort();
return;
}
@@ -1861,11 +1858,6 @@ fn NewRequestContext(comptime ssl_enabled: bool, comptime debug_mode: bool, comp
pub fn handleResolveStream(req: *RequestContext) void {
streamLog("handleResolveStream", .{});
- //aborted so call finalizeForAbort
- if (req.aborted) {
- req.finalizeForAbort();
- return;
- }
var wrote_anything = false;
if (req.sink) |wrapper| {
@@ -1885,6 +1877,14 @@ fn NewRequestContext(comptime ssl_enabled: bool, comptime debug_mode: bool, comp
resp.body.value = .{ .Used = {} };
}
}
+
+ streamLog("onResolve({any})", .{wrote_anything});
+
+ //aborted so call finalizeForAbort
+ if (req.aborted) {
+ req.finalizeForAbort();
+ return;
+ }
const responded = req.resp.hasResponded();
diff --git a/src/bun.js/webcore/streams.zig b/src/bun.js/webcore/streams.zig
index 0a38c7ed0..1de209b69 100644
--- a/src/bun.js/webcore/streams.zig
+++ b/src/bun.js/webcore/streams.zig
@@ -2758,7 +2758,7 @@ pub fn HTTPServerWritable(comptime ssl: bool) type {
return Sink.init(this);
}
- pub fn onAborted(this: *@This(), _: *UWSResponse) void {
+ pub fn abort(this: *@This()) void {
log("onAborted()", .{});
this.signal.close(null);
this.done = true;