Skip to content

Commit 9fea6c7

Browse files
committed
use connection encoding in Query packet serializetion
1 parent 9ec1141 commit 9fea6c7

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

lib/packets/query.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,26 @@ var Buffer = require('safe-buffer').Buffer;
22
var Packet = require('../packets/packet.js');
33
var CommandCode = require('../constants/commands.js');
44
var StringParser = require('../parsers/string.js');
5+
var CharsetToEncoding = require('../constants/charset_encodings.js');
6+
57

68
function Query (sql, charsetNumber)
79
{
810
this.query = sql;
911
this.charsetNumber = charsetNumber;
12+
this.encoding = CharsetToEncoding[charsetNumber];
1013
}
1114

1215
Query.prototype.toPacket = function ()
1316
{
14-
// TODO: use this.charsetNumber and get proper encoding type
15-
var buf = StringParser.encode(this.query, 'cesu8');
17+
var buf = StringParser.encode(this.query, this.encoding);
1618
var length = 5 + buf.length;
1719

1820
var buffer = Buffer.allocUnsafe(length);
1921
var packet = new Packet(0, buffer, 0, length);
2022
packet.offset = 4;
2123
packet.writeInt8(CommandCode.QUERY);
22-
// TODO: pass down encoding to this method too
23-
packet.writeString(this.query, 'cesu8');
24+
packet.writeBuffer(buf);
2425
return packet;
2526
};
2627

0 commit comments

Comments
 (0)