From a9238c757773f3b062f5263805595e1962b84f5b Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Wed, 14 May 2025 14:31:50 +0200 Subject: [PATCH] Use entry.async_on_unload in gpslogger (#144883) --- homeassistant/components/gpslogger/__init__.py | 3 +-- homeassistant/components/gpslogger/device_tracker.py | 4 +--- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/homeassistant/components/gpslogger/__init__.py b/homeassistant/components/gpslogger/__init__.py index 7c7612ed201..46843b30f4d 100644 --- a/homeassistant/components/gpslogger/__init__.py +++ b/homeassistant/components/gpslogger/__init__.py @@ -90,7 +90,7 @@ async def handle_webhook( async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Configure based on config entry.""" - hass.data.setdefault(DOMAIN, {"devices": set(), "unsub_device_tracker": {}}) + hass.data.setdefault(DOMAIN, {"devices": set()}) webhook.async_register( hass, DOMAIN, "GPSLogger", entry.data[CONF_WEBHOOK_ID], handle_webhook ) @@ -103,7 +103,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Unload a config entry.""" webhook.async_unregister(hass, entry.data[CONF_WEBHOOK_ID]) - hass.data[DOMAIN]["unsub_device_tracker"].pop(entry.entry_id)() return await hass.config_entries.async_unload_platforms(entry, PLATFORMS) diff --git a/homeassistant/components/gpslogger/device_tracker.py b/homeassistant/components/gpslogger/device_tracker.py index cf0515f5c41..515f550e566 100644 --- a/homeassistant/components/gpslogger/device_tracker.py +++ b/homeassistant/components/gpslogger/device_tracker.py @@ -42,9 +42,7 @@ async def async_setup_entry( async_add_entities([GPSLoggerEntity(device, gps, battery, accuracy, attrs)]) - hass.data[DOMAIN]["unsub_device_tracker"][entry.entry_id] = ( - async_dispatcher_connect(hass, TRACKER_UPDATE, _receive_data) - ) + entry.async_on_unload(async_dispatcher_connect(hass, TRACKER_UPDATE, _receive_data)) # Restore previously loaded devices dev_reg = dr.async_get(hass)