mirror of
https://github.com/home-assistant/core.git
synced 2025-07-15 17:27:10 +00:00
Avoid some data merges in the bluetooth remote scanners when nothing has changed (#85270)
This commit is contained in:
parent
c4d03088c0
commit
1fbdb80430
@ -297,17 +297,26 @@ class BaseHaRemoteScanner(BaseHaScanner):
|
|||||||
and len(prev_device.name) > len(local_name)
|
and len(prev_device.name) > len(local_name)
|
||||||
):
|
):
|
||||||
local_name = prev_device.name
|
local_name = prev_device.name
|
||||||
if prev_advertisement.service_uuids:
|
if service_uuids and service_uuids != prev_advertisement.service_uuids:
|
||||||
service_uuids = list(
|
service_uuids = list(
|
||||||
set(service_uuids + prev_advertisement.service_uuids)
|
set(service_uuids + prev_advertisement.service_uuids)
|
||||||
)
|
)
|
||||||
if prev_advertisement.service_data:
|
elif not service_uuids:
|
||||||
|
service_uuids = prev_advertisement.service_uuids
|
||||||
|
if service_data and service_data != prev_advertisement.service_data:
|
||||||
service_data = {**prev_advertisement.service_data, **service_data}
|
service_data = {**prev_advertisement.service_data, **service_data}
|
||||||
if prev_advertisement.manufacturer_data:
|
elif not service_data:
|
||||||
|
service_data = prev_advertisement.service_data
|
||||||
|
if (
|
||||||
|
manufacturer_data
|
||||||
|
and manufacturer_data != prev_advertisement.manufacturer_data
|
||||||
|
):
|
||||||
manufacturer_data = {
|
manufacturer_data = {
|
||||||
**prev_advertisement.manufacturer_data,
|
**prev_advertisement.manufacturer_data,
|
||||||
**manufacturer_data,
|
**manufacturer_data,
|
||||||
}
|
}
|
||||||
|
elif not manufacturer_data:
|
||||||
|
manufacturer_data = prev_advertisement.manufacturer_data
|
||||||
|
|
||||||
advertisement_data = AdvertisementData(
|
advertisement_data = AdvertisementData(
|
||||||
local_name=None if local_name == "" else local_name,
|
local_name=None if local_name == "" else local_name,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user