diff options
author | zxzxwu <92432172+zxzxwu@users.noreply.github.com> | 2024-02-06 16:13:51 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-06 16:13:51 +0800 |
commit | 90f49267d146e143e1e2db513a598a3d538e3e0f (patch) | |
tree | 14f2fc024ea0e632e65306c4dc32f705bc89e747 | |
parent | f4aeaa6eb3f66b516e702c9e78006a5685abdcf7 (diff) | |
parent | 9eccc583d5bafb9b513e7a7d03efaa64b290d902 (diff) | |
download | bumble-90f49267d146e143e1e2db513a598a3d538e3e0f.tar.gz |
Merge pull request #424 from zxzxwu/adv
Fix double-disable legacy advertising set
-rw-r--r-- | bumble/device.py | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/bumble/device.py b/bumble/device.py index 46ddc48..01a5cbe 100644 --- a/bumble/device.py +++ b/bumble/device.py @@ -2065,7 +2065,9 @@ class Device(CompositeEventEmitter): """Stop legacy advertising.""" # Disable advertising if self.legacy_advertising_set: - await self.legacy_advertising_set.stop() + if self.legacy_advertising_set.enabled: + await self.legacy_advertising_set.stop() + await self.legacy_advertising_set.remove() self.legacy_advertising_set = None elif self.legacy_advertiser: await self.legacy_advertiser.stop() @@ -2207,9 +2209,6 @@ class Device(CompositeEventEmitter): if self.legacy_advertiser: return True - if self.legacy_advertising_set and self.legacy_advertising_set.enabled: - return True - return any( advertising_set.enabled for advertising_set in self.extended_advertising_sets.values() @@ -3541,11 +3540,9 @@ class Device(CompositeEventEmitter): connection_handle, number_of_completed_extended_advertising_events, ): + # Legacy advertising set is also one of extended advertising sets. if not ( - advertising_set := ( - self.extended_advertising_sets.get(advertising_handle) - or self.legacy_advertising_set - ) + advertising_set := self.extended_advertising_sets.get(advertising_handle) ): logger.warning(f'advertising set {advertising_handle} not found') return |