From 9d7889f52e283e8241d8b5db50985b76deb68ee2 Mon Sep 17 00:00:00 2001 From: bogdan Date: Sun, 29 Sep 2024 19:01:38 +0200 Subject: [PATCH] fixed stack overflow on test message by dynamically memory allocation --- src/MQTT.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/MQTT.c b/src/MQTT.c index 01f0a31..033794b 100644 --- a/src/MQTT.c +++ b/src/MQTT.c @@ -196,7 +196,7 @@ mqtt_app_err_t PublicTestMQTT(int idx) { char tmp[10]; char resp[256]; - char JSONMess[1024]; + char* JSONMess = malloc(1024); struct jWriteControl jwc; jwOpen(&jwc, JSONMess, 1024 - 64, JW_OBJECT, JW_COMPACT); jwObj_object(&jwc, "data"); @@ -292,12 +292,16 @@ mqtt_app_err_t PublicTestMQTT(int idx) jwObj_string(&jwc, "signature", (char*) sha_print); } else + { + free(JSONMess); return ESP_ERR_NOT_FOUND; + } jwClose(&jwc); mqtt_app_err_t merr = API_OK; if (SysServiceMQTTSend(JSONMess, strlen(JSONMess), idx) != ESP_OK) merr = API_INTERNAL_ERR; + free(JSONMess); return merr; }