|
|
@ -683,9 +683,8 @@ ReadStream.prototype._read = function () { |
|
|
|
allocNewPool(); |
|
|
|
} |
|
|
|
|
|
|
|
if (this.start !== undefined && this.firstRead) { |
|
|
|
this.pos = this.start; |
|
|
|
this.firstRead = false; |
|
|
|
if (self.start !== undefined && self.firstRead) { |
|
|
|
self.pos = self.start; |
|
|
|
} |
|
|
|
|
|
|
|
// Grab another reference to the pool in the case that while we're in the
|
|
|
@ -731,7 +730,10 @@ ReadStream.prototype._read = function () { |
|
|
|
self._read(); |
|
|
|
} |
|
|
|
|
|
|
|
fs.read(self.fd, pool, pool.used, toRead, this.pos, afterRead); |
|
|
|
// pass null for position after we've seeked to the start of a range read
|
|
|
|
// always pass null on a non-range read
|
|
|
|
fs.read(self.fd, pool, pool.used, toRead, (self.firstRead ? self.pos : null), afterRead); |
|
|
|
self.firstRead = false; |
|
|
|
|
|
|
|
if (self.pos !== undefined) { |
|
|
|
self.pos += toRead; |
|
|
|