From 52151853b3aa9c4ffcd2fe50271121ba92891b54 Mon Sep 17 00:00:00 2001 From: Liang Jiaqing Date: Sun, 29 Mar 2026 15:15:35 +0800 Subject: [PATCH] fix: encode str input when text=True is intercepted by header wrapper --- assets/code_run_header.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/assets/code_run_header.py b/assets/code_run_header.py index 0c516c1..0aab263 100644 --- a/assets/code_run_header.py +++ b/assets/code_run_header.py @@ -7,7 +7,10 @@ def _d(b): try: return b.decode() except: return b.decode('gbk', 'replace') def _run(*a, **k): - t = k.pop('text', 0) | k.pop('universal_newlines', 0); r = _r(*a, **k) + t = k.pop('text', 0) | k.pop('universal_newlines', 0) + if t and isinstance(k.get('input'), str): + k['input'] = k['input'].encode() + r = _r(*a, **k) if t: if r.stdout is not None: r.stdout = _d(r.stdout) if r.stderr is not None: r.stderr = _d(r.stderr)