From e93459bcae225c0ab381a7caa2704038c13c22c2 Mon Sep 17 00:00:00 2001 From: Luigi Pinca Date: Sat, 7 Apr 2018 16:40:50 +0200 Subject: [PATCH] stream: use instanceof when checking chunk type Use the `instanceof` operator instead of `Stream._isUint8Array()` when checking if a chunk is a `Uint8Array` as this is faster. --- lib/_stream_readable.js | 2 +- lib/_stream_writable.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/_stream_readable.js b/lib/_stream_readable.js index 5b044e79c1b18d..9030fae84b3811 100644 --- a/lib/_stream_readable.js +++ b/lib/_stream_readable.js @@ -291,7 +291,7 @@ function addChunk(stream, state, chunk, addToFront) { function chunkInvalid(state, chunk) { var er; - if (!Stream._isUint8Array(chunk) && + if (!(chunk instanceof Uint8Array) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) { diff --git a/lib/_stream_writable.js b/lib/_stream_writable.js index d21daf0541d339..ee131b96e65396 100644 --- a/lib/_stream_writable.js +++ b/lib/_stream_writable.js @@ -269,7 +269,7 @@ function validChunk(stream, state, chunk, cb) { Writable.prototype.write = function(chunk, encoding, cb) { var state = this._writableState; var ret = false; - var isBuf = !state.objectMode && Stream._isUint8Array(chunk); + var isBuf = !state.objectMode && chunk instanceof Uint8Array; if (isBuf && Object.getPrototypeOf(chunk) !== Buffer.prototype) { chunk = Stream._uint8ArrayToBuffer(chunk);