From a2be3b01879b6a72bcb0e520763754c656867e2e Mon Sep 17 00:00:00 2001 From: Steve Tecza Date: Wed, 25 Jun 2025 17:20:39 -0400 Subject: [PATCH] free memory before strdup repeated calls to esp_mqtt_client_set_uri were leaking 32 bytes of ram each time. --- mqtt_client.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mqtt_client.c b/mqtt_client.c index 5c4ba76f..be99e00e 100644 --- a/mqtt_client.c +++ b/mqtt_client.c @@ -1022,8 +1022,10 @@ esp_err_t esp_mqtt_client_set_uri(esp_mqtt_client_handle_t client, const char *u if (pass) { pass[0] = 0; //terminal username pass ++; + free(client->mqtt_state.connection.information.password); client->mqtt_state.connection.information.password = strdup(pass); } + free(client->mqtt_state.connection.information.username); client->mqtt_state.connection.information.username = strdup(user_info); free(user_info);