From 8ee7ffeea619459a028e5eaaf78b1e3af1e2e201 Mon Sep 17 00:00:00 2001 From: Phil Pluckthun Date: Sun, 1 Feb 2026 23:02:55 +0000 Subject: [PATCH] fix: Premature callback in `InflateStream` before flush (#25) --- .changeset/tender-planes-brush.md | 5 +++++ src/encoding.ts | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 .changeset/tender-planes-brush.md diff --git a/.changeset/tender-planes-brush.md b/.changeset/tender-planes-brush.md new file mode 100644 index 0000000..f7f74df --- /dev/null +++ b/.changeset/tender-planes-brush.md @@ -0,0 +1,5 @@ +--- +'fetch-nodeshim': patch +--- + +Fix `_final` on `InflateStream` calling `callback` before full flush. diff --git a/src/encoding.ts b/src/encoding.ts index aa3a141..8b1fc1c 100644 --- a/src/encoding.ts +++ b/src/encoding.ts @@ -37,10 +37,12 @@ class InflateStream extends Transform { _final(callback: TransformCallback) { if (this._inflate) { + this._inflate.once('finish', callback); this._inflate.end(); this._inflate = undefined; + } else { + callback(); } - callback(); } } -- 2.51.2