suprimedev commited on
Commit
490829e
·
verified ·
1 Parent(s): 4addbf0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +3 -7
app.py CHANGED
@@ -27,11 +27,7 @@ SAFE_BUILTINS = {
27
  "pow": pow, "print": print, "range": range, "repr": repr, "reversed": reversed,
28
  "round": round, "set": set, "slice": slice, "sorted": sorted, "str": str,
29
  "sum": sum, "tuple": tuple, "type": type, "zip": zip,
30
- }
31
-
32
- DANGEROUS_NAMES = {
33
- "open", "compile", "eval", "exec", "__import__", "input",
34
- "globals", "locals", "vars", "exit", "quit",
35
  }
36
 
37
 
@@ -80,12 +76,12 @@ def _worker(code: str, stdin_data: str, mem_limit_mb: int, cpu_limit_s: int, q:
80
  orig_stdout, orig_stderr, orig_stdin = sys.stdout, sys.stderr, sys.stdin
81
  sys.stdout, sys.stderr, sys.stdin = stdout_buf, stderr_buf, io.StringIO(stdin_data or "")
82
 
83
- # Check imports and install missing ones
84
  imports = _parse_imports(code)
85
  if imports:
86
  _install_missing(imports)
87
 
88
- safe_globals = {"__builtins__": SAFE_BUILTINS.copy()}
89
 
90
  exec(compile(code, filename="<user_code>", mode="exec"), safe_globals, None)
91
 
 
27
  "pow": pow, "print": print, "range": range, "repr": repr, "reversed": reversed,
28
  "round": round, "set": set, "slice": slice, "sorted": sorted, "str": str,
29
  "sum": sum, "tuple": tuple, "type": type, "zip": zip,
30
+ "__import__": __import__, # ✅ لازم برای import
 
 
 
 
31
  }
32
 
33
 
 
76
  orig_stdout, orig_stderr, orig_stdin = sys.stdout, sys.stderr, sys.stdin
77
  sys.stdout, sys.stderr, sys.stdin = stdout_buf, stderr_buf, io.StringIO(stdin_data or "")
78
 
79
+ # Install missing packages if needed
80
  imports = _parse_imports(code)
81
  if imports:
82
  _install_missing(imports)
83
 
84
+ safe_globals = {"__builtins__": SAFE_BUILTINS}
85
 
86
  exec(compile(code, filename="<user_code>", mode="exec"), safe_globals, None)
87