added free memory flag to MQTT transmit data structure
This commit is contained in:
parent
33da14fa0c
commit
aaed490d84
|
|
@ -52,6 +52,7 @@ typedef struct
|
||||||
char topic[CONFIG_WEBGUIAPP_MQTT_MAX_TOPIC_LENGTH];
|
char topic[CONFIG_WEBGUIAPP_MQTT_MAX_TOPIC_LENGTH];
|
||||||
char *raw_data_ptr;
|
char *raw_data_ptr;
|
||||||
int data_length;
|
int data_length;
|
||||||
|
bool keep_memory_onfinish;
|
||||||
}MQTT_DATA_SEND_STRUCT;
|
}MQTT_DATA_SEND_STRUCT;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -122,7 +122,7 @@ esp_err_t SysServiceMQTTSend(char *data, int len, int idx)
|
||||||
if (buf)
|
if (buf)
|
||||||
{
|
{
|
||||||
memcpy(buf, data, len);
|
memcpy(buf, data, len);
|
||||||
MQTT_DATA_SEND_STRUCT DSS;
|
MQTT_DATA_SEND_STRUCT DSS = {0};
|
||||||
ComposeTopic(DSS.topic, idx, SERVICE_NAME, UPLINK_SUBTOPIC);
|
ComposeTopic(DSS.topic, idx, SERVICE_NAME, UPLINK_SUBTOPIC);
|
||||||
DSS.raw_data_ptr = buf;
|
DSS.raw_data_ptr = buf;
|
||||||
DSS.data_length = len;
|
DSS.data_length = len;
|
||||||
|
|
@ -146,7 +146,7 @@ esp_err_t ExternalServiceMQTTSend(char *data, int len, int idx)
|
||||||
if (buf)
|
if (buf)
|
||||||
{
|
{
|
||||||
memcpy(buf, data, len);
|
memcpy(buf, data, len);
|
||||||
MQTT_DATA_SEND_STRUCT DSS;
|
MQTT_DATA_SEND_STRUCT DSS = {0};
|
||||||
ComposeTopic(DSS.topic, idx, EXTERNAL_SERVICE_NAME, UPLINK_SUBTOPIC);
|
ComposeTopic(DSS.topic, idx, EXTERNAL_SERVICE_NAME, UPLINK_SUBTOPIC);
|
||||||
DSS.raw_data_ptr = buf;
|
DSS.raw_data_ptr = buf;
|
||||||
DSS.data_length = len;
|
DSS.data_length = len;
|
||||||
|
|
@ -394,6 +394,7 @@ void MQTTTaskTransmit(void *pvParameter)
|
||||||
}
|
}
|
||||||
//else
|
//else
|
||||||
// ESP_LOGW(TAG, "MQTT client not initialized or disconnected");
|
// ESP_LOGW(TAG, "MQTT client not initialized or disconnected");
|
||||||
|
if (!DSS.keep_memory_onfinish)
|
||||||
free(DSS.raw_data_ptr);
|
free(DSS.raw_data_ptr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user