forked from espressif/esp-idf
Merge branch 'bugfix/ble_mesh_node_id_adv_v4.0' into 'release/v4.0'
ble_mesh: stack: Fix Node ID adv with wrong timeout (v4.0) See merge request espressif/esp-idf!11879
This commit is contained in:
@ -239,6 +239,11 @@ static inline int adv_send(struct net_buf *buf)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline TickType_t K_WAIT(int32_t val)
|
||||
{
|
||||
return (val == K_FOREVER) ? portMAX_DELAY : (val / portTICK_PERIOD_MS);
|
||||
}
|
||||
|
||||
static void adv_thread(void *p)
|
||||
{
|
||||
#if defined(CONFIG_BLE_MESH_RELAY_ADV_BUF)
|
||||
@ -262,7 +267,7 @@ static void adv_thread(void *p)
|
||||
BT_DBG("Mesh Proxy Advertising start");
|
||||
timeout = bt_mesh_proxy_server_adv_start();
|
||||
BT_DBG("Mesh Proxy Advertising up to %d ms", timeout);
|
||||
xQueueReceive(adv_queue.handle, &msg, timeout);
|
||||
xQueueReceive(adv_queue.handle, &msg, K_WAIT(timeout));
|
||||
BT_DBG("Mesh Proxy Advertising stop");
|
||||
bt_mesh_proxy_server_adv_stop();
|
||||
}
|
||||
@ -285,7 +290,7 @@ static void adv_thread(void *p)
|
||||
BT_DBG("Mesh Proxy Advertising start");
|
||||
timeout = bt_mesh_proxy_server_adv_start();
|
||||
BT_DBG("Mesh Proxy Advertising up to %d ms", timeout);
|
||||
handle = xQueueSelectFromSet(mesh_queue_set, timeout);
|
||||
handle = xQueueSelectFromSet(mesh_queue_set, K_WAIT(timeout));
|
||||
BT_DBG("Mesh Proxy Advertising stop");
|
||||
bt_mesh_proxy_server_adv_stop();
|
||||
if (handle) {
|
||||
|
Reference in New Issue
Block a user