summaryrefslogtreecommitdiff
path: root/lib/_stream_writable.js
diff options
context:
space:
mode:
authorRobert Nagy <ronagy@icloud.com>2019-07-15 23:48:44 +0200
committerRich Trott <rtrott@gmail.com>2019-08-18 16:27:05 -0700
commit188896ea3e5145df921d9708e8546b5778cf7267 (patch)
treef48ebec48adc022f6c41213f2142e2ef4315cc6c /lib/_stream_writable.js
parent4e782c9deb03b58923f22e930ba1c5a778fbe4a5 (diff)
downloadandroid-node-v8-188896ea3e5145df921d9708e8546b5778cf7267.tar.gz
android-node-v8-188896ea3e5145df921d9708e8546b5778cf7267.tar.bz2
android-node-v8-188896ea3e5145df921d9708e8546b5778cf7267.zip
stream: do not emit after 'error'
Do not emit 'prefinish' or 'finish' event after an error. PR-URL: https://github.com/nodejs/node/pull/28708 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Diffstat (limited to 'lib/_stream_writable.js')
-rw-r--r--lib/_stream_writable.js7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/_stream_writable.js b/lib/_stream_writable.js
index 47a9bb208c..c6d4ec4266 100644
--- a/lib/_stream_writable.js
+++ b/lib/_stream_writable.js
@@ -617,10 +617,11 @@ function callFinal(stream, state) {
state.pendingcb--;
if (err) {
errorOrDestroy(stream, err);
+ } else {
+ state.prefinished = true;
+ stream.emit('prefinish');
+ finishMaybe(stream, state);
}
- state.prefinished = true;
- stream.emit('prefinish');
- finishMaybe(stream, state);
});
}
function prefinish(stream, state) {