File tree 2 files changed +7
-0
lines changed
2 files changed +7
-0
lines changed Original file line number Diff line number Diff line change @@ -18,6 +18,7 @@ Changed
18
18
-------
19
19
* Updated PyObjC dependency on macOS to v10.x.
20
20
* Updated missing Bluetooth SIG characteristics and service UUIDs.
21
+ * Updated ``BlueZManager `` to remove empty interfaces from `_properties ` during InterfacesRemoved message.
21
22
22
23
Fixed
23
24
-----
Original file line number Diff line number Diff line change @@ -961,6 +961,12 @@ def _parse_msg(self, message: Message):
961
961
del self ._descriptor_map [obj_path ]
962
962
except KeyError :
963
963
pass
964
+
965
+ # Remove empty properties when all interfaces have been removed.
966
+ # This avoids wasting memory for people who have noisy devices
967
+ # with private addresses that change frequently.
968
+ if obj_path in self ._properties and not self ._properties [obj_path ]:
969
+ del self ._properties [obj_path ]
964
970
elif message .member == "PropertiesChanged" :
965
971
interface , changed , invalidated = message .body
966
972
message_path = message .path
You can’t perform that action at this time.
0 commit comments