Skip to content

Commit

Permalink
stream: improve read() performance further
Browse files Browse the repository at this point in the history
  • Loading branch information
mscdex committed Aug 11, 2019
1 parent ce7f3ed commit 793ad82
Showing 1 changed file with 10 additions and 10 deletions.
20 changes: 10 additions & 10 deletions lib/internal/streams/buffer_list.js
Original file line number Diff line number Diff line change
Expand Up @@ -71,19 +71,19 @@ module.exports = class BufferList {

// Consumes a specified amount of bytes or characters from the buffered data.
consume(n, hasStrings) {
var ret;
if (n < this.head.data.length) {
const data = this.head.data;
if (n < data.length) {
// `slice` is the same for buffers and strings.
ret = this.head.data.slice(0, n);
this.head.data = this.head.data.slice(n);
} else if (n === this.head.data.length) {
const slice = data.slice(0, n);
this.head.data = data.slice(n);
return slice;
}
if (n === data.length) {
// First chunk is a perfect match.
ret = this.shift();
} else {
// Result spans more than one buffer.
ret = hasStrings ? this._getString(n) : this._getBuffer(n);
return this.shift();
}
return ret;
// Result spans more than one buffer.
return hasStrings ? this._getString(n) : this._getBuffer(n);
}

first() {
Expand Down

0 comments on commit 793ad82

Please sign in to comment.