summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/http.ts
diff options
context:
space:
mode:
authorMarvin Hagemeister <marvin@deno.com>2024-07-10 12:01:08 +0200
committerGitHub <noreply@github.com>2024-07-10 12:01:08 +0200
commit9a0d59d95df29202080cf40a6e0bda52ca7fa6a8 (patch)
tree4580f0bafae86c1b96ea7b655a8528b401494c25 /ext/node/polyfills/http.ts
parent2a86edf0afd65af3020c8e6ad84e26d5a687e535 (diff)
fix(node/http): don't send destroyed requests (#24498)
Make sure that already destroyed requests are not actually sent. This error was discovered in jsdom's test suite.
Diffstat (limited to 'ext/node/polyfills/http.ts')
-rw-r--r--ext/node/polyfills/http.ts5
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/node/polyfills/http.ts b/ext/node/polyfills/http.ts
index 0ef245902..51d228d4e 100644
--- a/ext/node/polyfills/http.ts
+++ b/ext/node/polyfills/http.ts
@@ -765,6 +765,9 @@ class ClientRequest extends OutgoingMessage {
// deno-lint-ignore no-explicit-any
end(chunk?: any, encoding?: any, cb?: any): this {
+ // Do nothing if request is already destroyed.
+ if (this.destroyed) return this;
+
if (typeof chunk === "function") {
cb = chunk;
chunk = null;
@@ -797,6 +800,8 @@ class ClientRequest extends OutgoingMessage {
//
}
})();
+
+ return this;
}
abort() {