Fix wrong reply size in NativeMessagingBase

* Using length() on QString won't return correct size in bytes when string
contains UTF-8 chars.
This commit is contained in:
Olivier Le Moal 2018-03-13 00:22:38 +01:00 committed by Janek Bevendorff
parent 970cedf972
commit 3353b329fc

View File

@ -121,7 +121,8 @@ void NativeMessagingBase::sendReply(const QJsonObject& json)
void NativeMessagingBase::sendReply(const QString& reply)
{
if (!reply.isEmpty()) {
uint len = reply.length();
QByteArray bytes = reply.toUtf8();
uint len = bytes.size();
std::cout << char(((len>>0) & 0xFF)) << char(((len>>8) & 0xFF)) << char(((len>>16) & 0xFF)) << char(((len>>24) & 0xFF));
std::cout << reply.toStdString() << std::flush;
}