From f0fbc7bb2cda244aabe12f93b5c4be86f95f7739 Mon Sep 17 00:00:00 2001 From: Simone Chemelli Date: Sun, 20 Feb 2022 06:07:40 +0100 Subject: [PATCH] Fritz: fix unbound topology (#66877) Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com> Co-authored-by: Paulus Schoutsen --- homeassistant/components/fritz/common.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/fritz/common.py b/homeassistant/components/fritz/common.py index d5410bf232c..5706ca19486 100644 --- a/homeassistant/components/fritz/common.py +++ b/homeassistant/components/fritz/common.py @@ -331,6 +331,7 @@ class FritzBoxTools(update_coordinator.DataUpdateCoordinator): _LOGGER.debug("Checking host info for FRITZ!Box device %s", self.host) self._update_available, self._latest_firmware = self._update_device_info() + topology: dict = {} if ( "Hosts1" not in self.connection.services or "X_AVM-DE_GetMeshListPath" @@ -372,7 +373,7 @@ class FritzBoxTools(update_coordinator.DataUpdateCoordinator): mesh_intf = {} # first get all meshed devices - for node in topology["nodes"]: + for node in topology.get("nodes", []): if not node["is_meshed"]: continue @@ -389,7 +390,7 @@ class FritzBoxTools(update_coordinator.DataUpdateCoordinator): self.mesh_role = MeshRoles(node["mesh_role"]) # second get all client devices - for node in topology["nodes"]: + for node in topology.get("nodes", []): if node["is_meshed"]: continue