From 2929313652a9d7fb3a26ad7f754deaeb03435e10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Tue, 29 Aug 2023 14:13:58 +0200 Subject: fix(node/http): don't leak resources on destroyed request (#20040) Closes https://github.com/denoland/deno/issues/19828 --- ext/node/polyfills/http.ts | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'ext/node/polyfills') diff --git a/ext/node/polyfills/http.ts b/ext/node/polyfills/http.ts index 1103e93c3..ae670d5f0 100644 --- a/ext/node/polyfills/http.ts +++ b/ext/node/polyfills/http.ts @@ -787,6 +787,13 @@ class ClientRequest extends OutgoingMessage { } this.destroyed = true; + const rid = this._client?.rid; + if (rid) { + core.tryClose(rid); + } + if (this._req.cancelHandleRid !== null) { + core.tryClose(this._req.cancelHandleRid); + } // If we're aborting, we don't care about any more response data. if (this.res) { this.res._dump(); -- cgit v1.2.3