Просмотр исходного кода

fix(devices): make sure we update state after resetting state to avoid race condition

Ivann LARUELLE 3 лет назад
Родитель
Сommit
08912df117
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      custom_components/tuya_local/device.py

+ 2 - 2
custom_components/tuya_local/device.py

@@ -403,14 +403,14 @@ class TuyaLocalDevice(object):
                 self._api_protocol_working = True
                 return retval
             except Exception as e:
-                for entity in self._children:
-                    entity.async_schedule_update_ha_state()
                 _LOGGER.debug(
                     f"Retrying after exception {e} ({i}/{connections})",
                 )
                 if i + 1 == connections:
                     self._reset_cached_state()
                     self._api_protocol_working = False
+                    for entity in self._children:
+                        entity.async_schedule_update_ha_state()
                     _LOGGER.error(error_message)
                 if not self._api_protocol_working:
                     await self._rotate_api_protocol_version()