mirror of
https://github.com/unmojang/node-minecraft-protocol.git
synced 2025-09-29 06:03:33 -04:00
Merge pull request #170 from rom1504/fix_compressPacketBuffer
fix compressPacketBuffer
This commit is contained in:
commit
e2519f0b9f
@ -185,7 +185,7 @@ Client.prototype.write = function(packetId, params) {
|
|||||||
compressPacketBuffer(buffer, finishWriting);
|
compressPacketBuffer(buffer, finishWriting);
|
||||||
} else if(this.compressionThreshold >= -1) {
|
} else if(this.compressionThreshold >= -1) {
|
||||||
debug("New-styling packet");
|
debug("New-styling packet");
|
||||||
newStylePacket(buffer, finishWriting);
|
newStylePacket(buffer, 0, finishWriting);
|
||||||
} else {
|
} else {
|
||||||
debug("Old-styling packet");
|
debug("Old-styling packet");
|
||||||
oldStylePacket(buffer, finishWriting);
|
oldStylePacket(buffer, finishWriting);
|
||||||
@ -207,7 +207,7 @@ Client.prototype.writeRaw = function(buffer) {
|
|||||||
if(this.compressionThreshold >= 0 && buffer.length >= this.compressionThreshold) {
|
if(this.compressionThreshold >= 0 && buffer.length >= this.compressionThreshold) {
|
||||||
compressPacketBuffer(buffer, finishWriting);
|
compressPacketBuffer(buffer, finishWriting);
|
||||||
} else if(this.compressionThreshold >= -1) {
|
} else if(this.compressionThreshold >= -1) {
|
||||||
newStylePacket(buffer, finishWriting);
|
newStylePacket(buffer, 0, finishWriting);
|
||||||
} else {
|
} else {
|
||||||
oldStylePacket(buffer, finishWriting);
|
oldStylePacket(buffer, finishWriting);
|
||||||
}
|
}
|
||||||
|
@ -139,7 +139,7 @@ function compressPacketBuffer(buffer, callback) {
|
|||||||
if(err)
|
if(err)
|
||||||
callback(err);
|
callback(err);
|
||||||
else
|
else
|
||||||
newStylePacket(buffer, callback);
|
newStylePacket(buf, buffer.length, callback);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -150,13 +150,13 @@ function oldStylePacket(buffer, callback) {
|
|||||||
callback(null, packet);
|
callback(null, packet);
|
||||||
}
|
}
|
||||||
|
|
||||||
function newStylePacket(buffer, callback) {
|
function newStylePacket(buffer, dataSize, callback) {
|
||||||
var sizeOfDataLength = utils.varint[2](0);
|
var sizeOfDataLength = utils.varint[2](dataSize);
|
||||||
var sizeOfLength = utils.varint[2](buffer.length + sizeOfDataLength);
|
var sizeOfLength = utils.varint[2](buffer.length + sizeOfDataLength);
|
||||||
var size = sizeOfLength + sizeOfDataLength + buffer.length;
|
var size = sizeOfLength + sizeOfDataLength + buffer.length;
|
||||||
var packet = new Buffer(size);
|
var packet = new Buffer(size);
|
||||||
var cursor = utils.varint[1](size - sizeOfLength, packet, 0);
|
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);
|
utils.buffer[1](buffer, packet, cursor);
|
||||||
callback(null, packet);
|
callback(null, packet);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user