mirror of
https://github.com/espressif/esp-nimble.git
synced 2026-09-24 01:47:22 +00:00
mesh: Fix clearing HB state when disabling HB sub
The heartbeat subscription Count, MinHops & MaxHops should only be reset when enabling heartbeat subscription. Any other actions should keep it unchanged. X-Original-Commit: 1f27b1a255930692a859d5417b62d224d24d0485
This commit is contained in:
@@ -2918,23 +2918,18 @@ static void heartbeat_sub_set(struct bt_mesh_model *model,
|
||||
sub_period == 0x00) {
|
||||
cfg->hb_sub.src = BT_MESH_ADDR_UNASSIGNED;
|
||||
cfg->hb_sub.dst = BT_MESH_ADDR_UNASSIGNED;
|
||||
cfg->hb_sub.min_hops = 0;
|
||||
cfg->hb_sub.max_hops = 0;
|
||||
|
||||
period_ms = 0;
|
||||
} else {
|
||||
cfg->hb_sub.src = sub_src;
|
||||
cfg->hb_sub.dst = sub_dst;
|
||||
cfg->hb_sub.min_hops = 0x7f;
|
||||
cfg->hb_sub.max_hops = 0;
|
||||
|
||||
cfg->hb_sub.count = 0;
|
||||
period_ms = hb_pwr2(sub_period, 1) * 1000;
|
||||
}
|
||||
|
||||
BT_DBG("period_ms %u", period_ms);
|
||||
|
||||
cfg->hb_sub.count = 0;
|
||||
|
||||
if (period_ms) {
|
||||
cfg->hb_sub.expiry = k_uptime_get() + period_ms;
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user