From 1049a564006a89f1db13f99cd894da5ab91a7baf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= Date: Mon, 5 Oct 2015 01:10:50 +0100 Subject: [PATCH] Sort sockets by their names. --- server.cpp | 1 + socket.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/server.cpp b/server.cpp index 51081c7..a1cf7b4 100644 --- a/server.cpp +++ b/server.cpp @@ -157,6 +157,7 @@ void Server::readPendingDatagrams() if (!duplicate) { Socket *socket = new Socket(sender, reply); sockets->push_back(socket); + std::sort(sockets->begin(), sockets->end(), [](const Socket* a, const Socket* b) -> bool { return QString(a->socketName) < QString(b->socketName); }); Q_EMIT discovered(); } mac = reply.mid(7, 6); diff --git a/socket.cpp b/socket.cpp index d842ab5..f9a6440 100644 --- a/socket.cpp +++ b/socket.cpp @@ -175,7 +175,7 @@ void Socket::writeSocketData(QByteArray socketName, QByteArray remotePassword, Q stream1.setByteOrder(QDataStream::LittleEndian); stream1 << countdown; - QByteArray record = QByteArray::fromHex("01:00") /* record number = 1*/ + versionID + mac + twenties + rmac + twenties + remotePassword + socketName + icon + hardwareVersion + firmwareVersion + wifiFirmwareVersion + port + staticServerIP + port + domainServerName + localIP + localGatewayIP + localNetMask + dhcpNode + discoverable + timeZoneSet + timeZone + (countdownEnabled ? QByteArray::fromHex("01:00") : QByteArray::fromHex("00:ff")) + countDown + zeros + zeros + zeros + zeros + QStringLiteral("000000000000000000000000000000").toLocal8Bit(); + QByteArray record = QByteArray::fromHex("01:00") /* record number = 1*/ + versionID + mac + twenties + rmac + twenties + remotePassword + socketName + icon + hardwareVersion + firmwareVersion + wifiFirmwareVersion + port + staticServerIP + port + domainServerName + localIP + localGatewayIP + localNetMask + dhcpNode + discoverable + timeZoneSet + timeZone + zero + (countdownEnabled ? one : QByteArray::fromHex("ff")) + countDown + zeros + zeros + zeros + zeros + QStringLiteral("000000000000000000000000000000").toLocal8Bit(); QByteArray recordLength; QDataStream stream(&recordLength, QIODevice::WriteOnly);