mirror of
https://github.com/home-assistant/core.git
synced 2025-07-26 22:57:17 +00:00
Don't allow adding a config entry with colliding unique_id
This commit is contained in:
parent
ce94073321
commit
0fec78ea75
@ -1680,9 +1680,12 @@ class ConfigEntryItems(UserDict[str, ConfigEntry]):
|
|||||||
self.check_unique_id(entry)
|
self.check_unique_id(entry)
|
||||||
self._domain_index.setdefault(entry.domain, []).append(entry)
|
self._domain_index.setdefault(entry.domain, []).append(entry)
|
||||||
if entry.unique_id is not None:
|
if entry.unique_id is not None:
|
||||||
self._domain_unique_id_index.setdefault(entry.domain, {}).setdefault(
|
domain_entries = self._domain_unique_id_index.setdefault(entry.domain, {})
|
||||||
entry.unique_id, []
|
if entry.unique_id in domain_entries:
|
||||||
).append(entry)
|
raise ValueError(
|
||||||
|
f"{entry.domain} config entry with unique id {entry.unique_id} already exists"
|
||||||
|
)
|
||||||
|
domain_entries.setdefault(entry.unique_id, []).append(entry)
|
||||||
|
|
||||||
def _unindex_entry(self, entry_id: str) -> None:
|
def _unindex_entry(self, entry_id: str) -> None:
|
||||||
"""Unindex an entry."""
|
"""Unindex an entry."""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user