BugFix: resource leak

Signed-off-by: tomoaki <tomoaki@tomy-tech.com>
This commit is contained in:
tomoaki
2018-08-13 06:05:18 +09:00
parent e308c3da83
commit f216abd97e
2 changed files with 11 additions and 11 deletions

View File

@@ -284,16 +284,9 @@ void MQTTGWPublishHandler::handleAggregatePublish(Client* client, MQTTGWPacket*
replyACK(client, &pub, PUBREC);
}
MQTTGWPacket* msg = new MQTTGWPacket();
*msg = *packet;
if ( msg->getType() == 0 )
{
WRITELOG("%s MQTTGWPublishHandler::handleAggregatePublish can't allocate memories for Packet.%s\n", ERRMSG_HEADER,ERRMSG_FOOTER);
delete msg;
return;
}
string* topicName = new string(pub.topic);
string* topicName = new string(pub.topic, pub.topiclen);
Topic topic = Topic(topicName, MQTTSN_TOPIC_TYPE_NORMAL);
AggregateTopicElement* list = _gateway->getAdapterManager()->createClientList(&topic);
if ( list != nullptr )
@@ -305,8 +298,16 @@ void MQTTGWPublishHandler::handleAggregatePublish(Client* client, MQTTGWPacket*
Client* devClient = p->getClient();
if ( devClient != nullptr )
{
MQTTGWPacket* msg = new MQTTGWPacket();
*msg = *packet;
if ( msg->getType() == 0 )
{
WRITELOG("%s MQTTGWPublishHandler::handleAggregatePublish can't allocate memories for Packet.%s\n", ERRMSG_HEADER,ERRMSG_FOOTER);
delete msg;
break;
}
Event* ev = new Event();
ev->setBrokerRecvEvent(devClient, packet);
ev->setBrokerRecvEvent(devClient, msg);
_gateway->getPacketEventQue()->post(ev);
}
else

View File

@@ -282,5 +282,4 @@ void MQTTSNPublishHandler::handleAggregateAck(Client* client, MQTTSNPacket* pack
ev->setClientSendEvent(client, ackPacket);
_gateway->getClientSendQue()->post(ev);
}
return;
}