diff --git a/frappe/utils/jinja.py b/frappe/utils/jinja.py index 0759ae9804..4e5a2b6a1a 100644 --- a/frappe/utils/jinja.py +++ b/frappe/utils/jinja.py @@ -92,22 +92,23 @@ def render_template(template, context=None, is_path=None, safe_render=True): if context is None: context = {} - if is_path or guess_is_path(template): - is_path = True - compiled_template = compile_template(template) - else: - jenv: SandboxedEnvironment = get_jenv() - if safe_render and ".__" in template: - throw(_("Illegal template")) - try: - compiled_template = jenv.from_string(template) - except TemplateError: - import html + try: + if is_path or guess_is_path(template): + is_path = True + compiled_template = compile_template(template) + else: + jenv: SandboxedEnvironment = get_jenv() + if safe_render and ".__" in template: + throw(_("Illegal template")) - throw( - title="Jinja Template Error", - msg=f"
{template}{html.escape(get_traceback())}",
- )
+ compiled_template = jenv.from_string(template)
+ except TemplateError:
+ import html
+
+ throw(
+ title="Jinja Template Error",
+ msg=f"{template}{html.escape(get_traceback())}",
+ )
import time