From 4c065540083b6ae485fe5dcb4627ad9a712c4221 Mon Sep 17 00:00:00 2001 From: Robert Nagy Date: Sat, 13 Nov 2021 15:04:35 +0200 Subject: [PATCH] stream: fix non readable Duplex readableAborted --- lib/internal/streams/readable.js | 7 +++++-- test/parallel/test-stream-readable-aborted.js | 9 +++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/lib/internal/streams/readable.js b/lib/internal/streams/readable.js index bd9c288aa71929..5eec1f2faae8f9 100644 --- a/lib/internal/streams/readable.js +++ b/lib/internal/streams/readable.js @@ -1187,8 +1187,11 @@ ObjectDefineProperties(Readable.prototype, { readableAborted: { enumerable: false, get: function() { - return !!(this._readableState.destroyed || this._readableState.errored) && - !this._readableState.endEmitted; + return !!( + this._readableState.readable && + (this._readableState.destroyed || this._readableState.errored) && + !this._readableState.endEmitted + ); } }, diff --git a/test/parallel/test-stream-readable-aborted.js b/test/parallel/test-stream-readable-aborted.js index 8915e07de45373..57a87b2ad2fcdb 100644 --- a/test/parallel/test-stream-readable-aborted.js +++ b/test/parallel/test-stream-readable-aborted.js @@ -55,3 +55,12 @@ const { Readable } = require('stream'); })); readable.resume(); } + +{ + const duplex = new Duplex({ + readable: false, + write () {} + }); + duplex.destroy(); + assert.strictEqual(readable.readableAborted, false); +}