tls: fix sporadic hang and partial reads

Do not decrement size in read loop, its used later, when comparing to
`bytesRead`.

fix #6270

NOTE: Original patch contributed by @roadrunner2
archived-io.js-v0.10
Fedor Indutny 2013-09-27 23:47:13 +04:00
parent cfa03ad2e3
commit 671b5be6e9
1 changed files with 1 additions and 2 deletions

View File

@ -447,10 +447,9 @@ CryptoStream.prototype._read = function read(size) {
var bytesRead = 0,
start = this._buffer.offset;
do {
var read = this._buffer.use(this.pair.ssl, out, size);
var read = this._buffer.use(this.pair.ssl, out, size - bytesRead);
if (read > 0) {
bytesRead += read;
size -= read;
}
// Handle and report errors