diff options
author | Anna Henningsen <anna@addaleax.net> | 2017-01-09 19:05:06 +0100 |
---|---|---|
committer | Anna Henningsen <anna@addaleax.net> | 2017-05-27 11:19:39 +0200 |
commit | 9f610b5e265549f048ef00cf521a0d36771c9574 (patch) | |
tree | dd12b56b2d516ce5d4a61697ae539f2a370a4760 /lib/_stream_writable.js | |
parent | 0ecdf2934039b6e847aa3d1441e3ec235a70d125 (diff) | |
download | android-node-v8-9f610b5e265549f048ef00cf521a0d36771c9574.tar.gz android-node-v8-9f610b5e265549f048ef00cf521a0d36771c9574.tar.bz2 android-node-v8-9f610b5e265549f048ef00cf521a0d36771c9574.zip |
stream: support Uint8Array input to methods
PR-URL: https://github.com/nodejs/node/pull/11608
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'lib/_stream_writable.js')
-rw-r--r-- | lib/_stream_writable.js | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/_stream_writable.js b/lib/_stream_writable.js index 768d80a96e..615f5a3762 100644 --- a/lib/_stream_writable.js +++ b/lib/_stream_writable.js @@ -248,7 +248,11 @@ function validChunk(stream, state, chunk, cb) { Writable.prototype.write = function(chunk, encoding, cb) { var state = this._writableState; var ret = false; - var isBuf = (chunk instanceof Buffer); + var isBuf = Stream._isUint8Array(chunk) && !state.objectMode; + + if (isBuf && Object.getPrototypeOf(chunk) !== Buffer.prototype) { + chunk = Stream._uint8ArrayToBuffer(chunk); + } if (typeof encoding === 'function') { cb = encoding; |