fix compressPacketBuffer : it was not compressing anything until now, also fix a problem in newStylePacket to handle the correct dataSize

This commit is contained in:
Romain Beaumont 2015-05-18 18:24:10 +02:00
parent 3cab629259
commit 8a6a9c00e9
2 changed files with 6 additions and 6 deletions

View File

@ -185,7 +185,7 @@ Client.prototype.write = function(packetId, params) {
compressPacketBuffer(buffer, finishWriting);
} else if(this.compressionThreshold >= -1) {
debug("New-styling packet");
newStylePacket(buffer, finishWriting);
newStylePacket(buffer, 0, finishWriting);
} else {
debug("Old-styling packet");
oldStylePacket(buffer, finishWriting);
@ -207,7 +207,7 @@ Client.prototype.writeRaw = function(buffer) {
if(this.compressionThreshold >= 0 && buffer.length >= this.compressionThreshold) {
compressPacketBuffer(buffer, finishWriting);
} else if(this.compressionThreshold >= -1) {
newStylePacket(buffer, finishWriting);
newStylePacket(buffer, 0, finishWriting);
} else {
oldStylePacket(buffer, finishWriting);
}

View File

@ -139,7 +139,7 @@ function compressPacketBuffer(buffer, callback) {
if(err)
callback(err);
else
newStylePacket(buffer, callback);
newStylePacket(buf, buffer.length, callback);
});
}
@ -150,13 +150,13 @@ function oldStylePacket(buffer, callback) {
callback(null, packet);
}
function newStylePacket(buffer, callback) {
var sizeOfDataLength = utils.varint[2](0);
function newStylePacket(buffer, dataSize, callback) {
var sizeOfDataLength = utils.varint[2](dataSize);
var sizeOfLength = utils.varint[2](buffer.length + sizeOfDataLength);
var size = sizeOfLength + sizeOfDataLength + buffer.length;
var packet = new Buffer(size);
var cursor = utils.varint[1](size - sizeOfLength, packet, 0);
cursor = utils.varint[1](0, packet, cursor);
cursor = utils.varint[1](dataSize, packet, cursor);
utils.buffer[1](buffer, packet, cursor);
callback(null, packet);
}