diff options
author | Richard Lau <riclau@uk.ibm.com> | 2019-09-27 20:32:40 -0400 |
---|---|---|
committer | Rich Trott <rtrott@gmail.com> | 2019-09-28 06:53:52 -0700 |
commit | 95792a79892471e2c691c071e85d7fea29aa40cd (patch) | |
tree | c1aa9453b59136d92e7a5ceca7fb2abaf7cd8d13 /lib/internal/streams | |
parent | 35bfe0e414f4d4b79ca0820c3b0dd41e61d893be (diff) | |
download | android-node-v8-95792a79892471e2c691c071e85d7fea29aa40cd.tar.gz android-node-v8-95792a79892471e2c691c071e85d7fea29aa40cd.tar.bz2 android-node-v8-95792a79892471e2c691c071e85d7fea29aa40cd.zip |
Revert "stream: invoke callback before emitting error always"
This reverts commit 3de5eae6dbe503485b95bdeb8bddbd67e4613d59.
PR-URL: https://github.com/nodejs/node/pull/29741
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'lib/internal/streams')
-rw-r--r-- | lib/internal/streams/destroy.js | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/lib/internal/streams/destroy.js b/lib/internal/streams/destroy.js index 8708ca022c..27985482ce 100644 --- a/lib/internal/streams/destroy.js +++ b/lib/internal/streams/destroy.js @@ -27,10 +27,6 @@ function destroy(err, cb) { const r = this._readableState; const w = this._writableState; - if (w && err) { - w.errored = true; - } - if ((w && w.destroyed) || (r && r.destroyed)) { if (cb) { cb(err); @@ -54,12 +50,10 @@ function destroy(err, cb) { this._destroy(err || null, (err) => { const emitClose = (w && w.emitClose) || (r && r.emitClose); if (cb) { - // Invoke callback before scheduling emitClose so that callback - // can schedule before. - cb(err); if (emitClose) { process.nextTick(emitCloseNT, this); } + cb(err); } else if (needError(this, err)) { process.nextTick(emitClose ? emitErrorCloseNT : emitErrorNT, this, err); } else if (emitClose) { @@ -97,7 +91,6 @@ function undestroy() { if (w) { w.destroyed = false; - w.errored = false; w.ended = false; w.ending = false; w.finalCalled = false; @@ -117,10 +110,6 @@ function errorOrDestroy(stream, err) { const r = stream._readableState; const w = stream._writableState; - if (w & err) { - w.errored = true; - } - if ((r && r.autoDestroy) || (w && w.autoDestroy)) stream.destroy(err); else if (needError(stream, err)) |