From d386541c1a41060d16fcc616397bf0eb386afd94 Mon Sep 17 00:00:00 2001 From: tomoaki Date: Fri, 9 Dec 2016 13:20:23 +0900 Subject: [PATCH] BugFix BugFix of Issues #41 --- MQTTSNGateway/src/MQTTSNGWBrokerRecvTask.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/MQTTSNGateway/src/MQTTSNGWBrokerRecvTask.cpp b/MQTTSNGateway/src/MQTTSNGWBrokerRecvTask.cpp index f9d0ddf..3b57408 100644 --- a/MQTTSNGateway/src/MQTTSNGWBrokerRecvTask.cpp +++ b/MQTTSNGateway/src/MQTTSNGWBrokerRecvTask.cpp @@ -119,7 +119,6 @@ void BrokerRecvTask::run(void) if ( rc > 0 ) { if ( log(client, packet) == -1 ) - { delete packet; goto nextClient; @@ -132,7 +131,13 @@ void BrokerRecvTask::run(void) } else { - if (rc == -1) + if ( rc == 0 ) + { + client->getNetwork()->close(); + delete packet; + goto nextClient; + } + else if (rc == -1) { WRITELOG("%s BrokerRecvTask can't receive a packet from the broker errno=%d %s%s\n", ERRMSG_HEADER, errno, client->getClientId(), ERRMSG_FOOTER); }