diff --git a/homeassistant/helpers/template.py b/homeassistant/helpers/template.py index d938b9771a4..1a4aaf39b19 100644 --- a/homeassistant/helpers/template.py +++ b/homeassistant/helpers/template.py @@ -24,6 +24,7 @@ from typing import Any, Literal, NoReturn, TypeVar, cast, overload from urllib.parse import urlencode as urllib_urlencode import weakref +import async_timeout from awesomeversion import AwesomeVersion import jinja2 from jinja2 import pass_context, pass_environment, pass_eval_context @@ -534,7 +535,8 @@ class Template: try: template_render_thread = ThreadWithException(target=_render_template) template_render_thread.start() - await asyncio.wait_for(finish_event.wait(), timeout=timeout) + async with async_timeout.timeout(timeout): + await finish_event.wait() if self._exc_info: raise TemplateError(self._exc_info[1].with_traceback(self._exc_info[2])) except asyncio.TimeoutError: