mirror of
https://github.com/eclipse/paho.mqtt-sn.embedded-c.git
synced 2025-12-15 16:36:52 +01:00
BugFix Subscribe pre\defined\topic #132
Signed-off-by: tomoaki <tomoaki@tomy-tech.com>
This commit is contained in:
@@ -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)
|
||||||
|
|||||||
Reference in New Issue
Block a user