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 a926a6d..06351a4 100644
--- a/lib/nodejs/lib/thrift/transport.js
+++ b/lib/nodejs/lib/thrift/transport.js
@@ -165,7 +165,7 @@
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 @@
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;
},