Commit 65f143f86bafce96ef7096b5c550e71679f62626
1 parent
1b9eed17
Fix sending queued messages before conack
Showing
1 changed file
with
2 additions
and
1 deletions
mqttpacket.cpp
| @@ -327,13 +327,14 @@ void MqttPacket::handleConnect() | @@ -327,13 +327,14 @@ void MqttPacket::handleConnect() | ||
| 327 | if (accessGranted) | 327 | if (accessGranted) |
| 328 | { | 328 | { |
| 329 | bool sessionPresent = protocolVersion >= ProtocolVersion::Mqtt311 && !clean_session && subscriptionStore->sessionPresent(client_id); | 329 | bool sessionPresent = protocolVersion >= ProtocolVersion::Mqtt311 && !clean_session && subscriptionStore->sessionPresent(client_id); |
| 330 | - subscriptionStore->registerClientAndKickExistingOne(sender); | ||
| 331 | 330 | ||
| 332 | sender->setAuthenticated(true); | 331 | sender->setAuthenticated(true); |
| 333 | ConnAck connAck(ConnAckReturnCodes::Accepted, sessionPresent); | 332 | ConnAck connAck(ConnAckReturnCodes::Accepted, sessionPresent); |
| 334 | MqttPacket response(connAck); | 333 | MqttPacket response(connAck); |
| 335 | sender->writeMqttPacket(response); | 334 | sender->writeMqttPacket(response); |
| 336 | logger->logf(LOG_NOTICE, "Client '%s' logged in successfully", sender->repr().c_str()); | 335 | logger->logf(LOG_NOTICE, "Client '%s' logged in successfully", sender->repr().c_str()); |
| 336 | + | ||
| 337 | + subscriptionStore->registerClientAndKickExistingOne(sender); | ||
| 337 | } | 338 | } |
| 338 | else | 339 | else |
| 339 | { | 340 | { |