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(); } }