fix(mqtt): topic is subscribed repeatedly

This commit is contained in:
gc87
2022-06-30 09:59:30 +08:00
parent 31dbfb1137
commit 8231e2ffd0
+9
View File
@@ -803,6 +803,15 @@ neu_err_code_e mqtt_c_client_subscribe(mqtt_c_client_t *client,
assert(NULL != client);
assert(NULL != topic && 0 < strlen(topic));
for (struct subscribe_tuple **p =
(struct subscribe_tuple **) utarray_front(client->array);
NULL != p;
p = (struct subscribe_tuple **) utarray_next(client->array, p)) {
if (0 == strcmp((*p)->topic, topic)) {
return NEU_ERR_SUCCESS;
}
}
struct subscribe_tuple *tuple =
client_subscribe_create(client, topic, qos, handle);
if (NULL == tuple) {