ssdataanalysis commited on
Commit
3c03eec
·
verified ·
1 Parent(s): 902790f

Harden TemplateResponse shim for mapping-context calls

Browse files
Files changed (1) hide show
  1. app.py +8 -1
app.py CHANGED
@@ -6,6 +6,7 @@ import time
6
  from concurrent.futures import ThreadPoolExecutor, as_completed
7
  from dataclasses import dataclass
8
  from io import BytesIO
 
9
  from typing import Dict, List, Optional, Tuple
10
 
11
  import gradio as gr
@@ -49,8 +50,14 @@ try:
49
  _original_template_response = Jinja2Templates.TemplateResponse
50
 
51
  def _safe_template_response(self, name, context=None, *args, **kwargs):
52
- if isinstance(context, dict):
 
 
 
 
53
  context = dict(context)
 
 
54
  context.setdefault(
55
  "config",
56
  {
 
6
  from concurrent.futures import ThreadPoolExecutor, as_completed
7
  from dataclasses import dataclass
8
  from io import BytesIO
9
+ from collections.abc import Mapping
10
  from typing import Dict, List, Optional, Tuple
11
 
12
  import gradio as gr
 
50
  _original_template_response = Jinja2Templates.TemplateResponse
51
 
52
  def _safe_template_response(self, name, context=None, *args, **kwargs):
53
+ if context is None:
54
+ context = kwargs.pop("context", None)
55
+ if context is None:
56
+ context = {}
57
+ elif isinstance(context, Mapping):
58
  context = dict(context)
59
+
60
+ if isinstance(context, dict):
61
  context.setdefault(
62
  "config",
63
  {