forked from espressif/esp-idf
fix(nimble): Handle missing free in application
This commit is contained in:
@@ -355,7 +355,7 @@ void ble_server_uart_task(void *pvParameters)
|
|||||||
//Waiting for UART event.
|
//Waiting for UART event.
|
||||||
if (xQueueReceive(spp_common_uart_queue, (void * )&event, (TickType_t)portMAX_DELAY)) {
|
if (xQueueReceive(spp_common_uart_queue, (void * )&event, (TickType_t)portMAX_DELAY)) {
|
||||||
switch (event.type) {
|
switch (event.type) {
|
||||||
//Event of UART receving data
|
//Event of UART receiving data
|
||||||
case UART_DATA:
|
case UART_DATA:
|
||||||
if (event.size) {
|
if (event.size) {
|
||||||
uint8_t *ntf;
|
uint8_t *ntf;
|
||||||
@@ -367,7 +367,7 @@ void ble_server_uart_task(void *pvParameters)
|
|||||||
/* Check if client has subscribed to notifications */
|
/* Check if client has subscribed to notifications */
|
||||||
if (conn_handle_subs[i]) {
|
if (conn_handle_subs[i]) {
|
||||||
struct os_mbuf *txom;
|
struct os_mbuf *txom;
|
||||||
txom = ble_hs_mbuf_from_flat(ntf, sizeof(ntf));
|
txom = ble_hs_mbuf_from_flat(ntf, event.size);
|
||||||
rc = ble_gatts_notify_custom(i, ble_spp_svc_gatt_read_val_handle,
|
rc = ble_gatts_notify_custom(i, ble_spp_svc_gatt_read_val_handle,
|
||||||
txom);
|
txom);
|
||||||
if (rc == 0) {
|
if (rc == 0) {
|
||||||
@@ -377,6 +377,8 @@ void ble_server_uart_task(void *pvParameters)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
free(ntf);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
Reference in New Issue
Block a user