From: Lysandros Nikolaou Date: Tue, 4 Jun 2024 21:22:28 +0000 (+0200) Subject: gh-119553: Fix console when pressing Ctrl-C within a multiline block (#120075) X-Git-Tag: v3.14.0a1~1596 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=69b3e8ea569faabccd74036e3d0e5ec7c0c62a20;p=thirdparty%2FPython%2Fcpython.git gh-119553: Fix console when pressing Ctrl-C within a multiline block (#120075) --- diff --git a/Lib/_pyrepl/commands.py b/Lib/_pyrepl/commands.py index e94e8c25d379..6bffed1bfe93 100644 --- a/Lib/_pyrepl/commands.py +++ b/Lib/_pyrepl/commands.py @@ -216,11 +216,13 @@ class interrupt(FinishCommand): import signal self.reader.console.finish() + self.reader.finish() os.kill(os.getpid(), signal.SIGINT) class ctrl_c(Command): def do(self) -> None: + self.reader.console.finish() self.reader.finish() raise KeyboardInterrupt diff --git a/Lib/_pyrepl/simple_interact.py b/Lib/_pyrepl/simple_interact.py index 256bbc7c6d76..2e5698eb1316 100644 --- a/Lib/_pyrepl/simple_interact.py +++ b/Lib/_pyrepl/simple_interact.py @@ -149,7 +149,7 @@ def run_multiline_interactive_console( assert not more input_n += 1 except KeyboardInterrupt: - console.write("\nKeyboardInterrupt\n") + console.write("KeyboardInterrupt\n") console.resetbuffer() except MemoryError: console.write("\nMemoryError\n")