1
0
mirror of https://github.com/esphome/esphome.git synced 2025-09-12 08:12:22 +01:00

handle collisions

This commit is contained in:
J. Nick Koston
2025-06-22 10:01:53 +02:00
parent 57599f7a98
commit bf8d8b6e63

View File

@@ -517,7 +517,9 @@ async def to_code(config: ConfigType) -> None:
# Process devices and areas
devices: list[dict[str, str]]
if devices := config[CONF_DEVICES]:
if not (devices := config[CONF_DEVICES]):
return
# Reserve space for devices
cg.add(cg.RawStatement(f"App.reserve_device({len(devices)});"))
cg.add_define("USE_DEVICES")
@@ -541,9 +543,7 @@ async def to_code(config: ConfigType) -> None:
device_id = dev_conf[CONF_ID]
device_id_hash = fnv1a_32bit_hash(device_id)
device_name = dev_conf[CONF_NAME]
_verify_no_collisions(
device_hashes, device_id, device_id_hash, CONF_DEVICES
)
_verify_no_collisions(device_hashes, device_id, device_id_hash, CONF_DEVICES)
dev = cg.new_Pvariable(device_id)
cg.add(dev.set_device_id(device_id_hash))
cg.add(dev.set_name(device_name))