mirror of
https://github.com/home-assistant/core.git
synced 2025-07-09 14:27:07 +00:00
Hold connection lock in Shelly RPC reconnect (#119009)
This commit is contained in:
parent
6ba8b7a5d6
commit
9a6902d827
@ -586,11 +586,13 @@ class ShellyRpcCoordinator(ShellyCoordinatorBase[RpcDevice]):
|
|||||||
raise UpdateFailed(
|
raise UpdateFailed(
|
||||||
f"Sleeping device did not update within {self.sleep_period} seconds interval"
|
f"Sleeping device did not update within {self.sleep_period} seconds interval"
|
||||||
)
|
)
|
||||||
if self.device.connected:
|
|
||||||
return
|
|
||||||
|
|
||||||
if not await self._async_device_connect_task():
|
async with self._connection_lock:
|
||||||
raise UpdateFailed("Device reconnect error")
|
if self.device.connected: # Already connected
|
||||||
|
return
|
||||||
|
|
||||||
|
if not await self._async_device_connect_task():
|
||||||
|
raise UpdateFailed("Device reconnect error")
|
||||||
|
|
||||||
async def _async_disconnected(self, reconnect: bool) -> None:
|
async def _async_disconnected(self, reconnect: bool) -> None:
|
||||||
"""Handle device disconnected."""
|
"""Handle device disconnected."""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user