From: Henrique Mendonca Date: Mon, 24 Sep 2012 19:11:19 +0000 (+0000) Subject: Thrift-1701:node.js TBufferedTransport buffer corruption X-Git-Tag: 0.9.1~305 X-Git-Url: https://source.supwisdom.com/gerrit/gitweb?a=commitdiff_plain;h=41dfe6fd5eee6716ef31e65509d6f30a34189c7b;p=common%2Fthrift.git Thrift-1701:node.js TBufferedTransport buffer corruption Patch: Marshall Roch fix buffer copy method calls git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1389517 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/lib/nodejs/lib/thrift/transport.js b/lib/nodejs/lib/thrift/transport.js index a926a6d8..06351a4a 100644 --- a/lib/nodejs/lib/thrift/transport.js +++ b/lib/nodejs/lib/thrift/transport.js @@ -165,7 +165,7 @@ TBufferedTransport.prototype = { var bufSize = (unreadedSize * 2 > this.defaultReadBufferSize) ? unreadedSize * 2 : this.defaultReadBufferSize; var buf = new Buffer(bufSize); if (unreadedSize > 0) { - this.inBuf.copy(buf, 0, this.readCursor, unreadedSize); + this.inBuf.copy(buf, 0, this.readCursor, this.writeCursor); } this.readCursor = 0; this.writeCursor = unreadedSize; @@ -195,7 +195,7 @@ TBufferedTransport.prototype = { throw new InputBufferUnderrunError(); } var buf = new Buffer(this.writeCursor - this.readCursor); - this.inBuf.copy(buf, 0, this.readCursor, this.writeCursor - this.readCursor); + this.inBuf.copy(buf, 0, this.readCursor, this.writeCursor); this.readCursor = this.writeCursor; return buf; },