BugFix Subscribe pre\defined\topic #132

Signed-off-by: tomoaki <tomoaki@tomy-tech.com>
This commit is contained in:
tomoaki
2018-08-25 10:21:09 +09:00
parent 6ef24f3bb8
commit fa4725b85d

View File

@@ -59,6 +59,8 @@ MQTTGWPacket* MQTTSNSubscribeHandler::handleSubscribe(Client* client, MQTTSNPack
if ( topicFilter.type == MQTTSN_TOPIC_TYPE_PREDEFINED ) if ( topicFilter.type == MQTTSN_TOPIC_TYPE_PREDEFINED )
{ {
topic = client->getTopics()->getTopicById(&topicFilter); topic = client->getTopics()->getTopicById(&topicFilter);
if ( topic ) if ( topic )
{ {
topicId = topic->getTopicId(); topicId = topic->getTopicId();
@@ -67,7 +69,15 @@ MQTTGWPacket* MQTTSNSubscribeHandler::handleSubscribe(Client* client, MQTTSNPack
} }
else else
{ {
goto RespExit; topic = _gateway->getTopics()->getTopicById(&topicFilter);
if ( !topic )
{
topic = client->getTopics()->add(topic->getTopicName()->c_str(), topic->getTopicId());
}
else
{
goto RespExit;
}
} }
} }
else if (topicFilter.type == MQTTSN_TOPIC_TYPE_NORMAL) else if (topicFilter.type == MQTTSN_TOPIC_TYPE_NORMAL)