From 18348527511e6bb966fb866cad2f35e36b2f143a Mon Sep 17 00:00:00 2001 From: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com> Date: Mon, 5 May 2025 21:37:01 +0100 Subject: [PATCH] gh-132017: Handle SIGCONT in `pyrepl` (#132918) (cherry picked from commit e4561da886717ddd01ab0970452a14a1531e874d) # Conflicts: # Lib/_pyrepl/unix_console.py --- Lib/_pyrepl/unix_console.py | 6 ++++++ .../2025-04-25-10-51-00.gh-issue-132017.SIGCONT1.rst | 1 + 2 files changed, 7 insertions(+) create mode 100644 Misc/NEWS.d/next/Library/2025-04-25-10-51-00.gh-issue-132017.SIGCONT1.rst diff --git a/Lib/_pyrepl/unix_console.py b/Lib/_pyrepl/unix_console.py index e69c96b11598aa..5b0c2fef92c0f0 100644 --- a/Lib/_pyrepl/unix_console.py +++ b/Lib/_pyrepl/unix_console.py @@ -199,6 +199,12 @@ def _my_getstr(cap: str, optional: bool = False) -> bytes | None: self.event_queue = EventQueue(self.input_fd, self.encoding) self.cursor_visible = 1 + signal.signal(signal.SIGCONT, self._sigcont_handler) + + def _sigcont_handler(self, signum, frame): + self.restore() + self.prepare() + def more_in_buffer(self) -> bool: return bool( self.input_buffer diff --git a/Misc/NEWS.d/next/Library/2025-04-25-10-51-00.gh-issue-132017.SIGCONT1.rst b/Misc/NEWS.d/next/Library/2025-04-25-10-51-00.gh-issue-132017.SIGCONT1.rst new file mode 100644 index 00000000000000..a11ccb9e07e01a --- /dev/null +++ b/Misc/NEWS.d/next/Library/2025-04-25-10-51-00.gh-issue-132017.SIGCONT1.rst @@ -0,0 +1 @@ +Fix error when ``pyrepl`` is suspended, then resumed and terminated.
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: