diff --git a/lib/internal/streams/readable.js b/lib/internal/streams/readable.js index bd9c288aa71929e..cb80c98b0d237ed 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 8915e07de453738..57a87b2ad2fcdb1 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); +}