Commit f5d7cc23 authored by R David Murray's avatar R David Murray

#8862: Fix curses cleanup with getchar is interrupted by a signal.

I have no idea how one would write a test for this.

Patch by July Tikhonov.
parent fcb6d6a3
...@@ -233,6 +233,8 @@ Core and Builtins ...@@ -233,6 +233,8 @@ Core and Builtins
Library Library
------- -------
- Issue #8862: Fixed curses cleanup when getkey is interrputed by a signal.
- Issue #17443: impalib.IMAP4_stream was using the default unbuffered IO - Issue #17443: impalib.IMAP4_stream was using the default unbuffered IO
in subprocess, but the imap code assumes buffered IO. In Python2 this in subprocess, but the imap code assumes buffered IO. In Python2 this
worked by accident. IMAP4_stream now explicitly uses buffered IO. worked by accident. IMAP4_stream now explicitly uses buffered IO.
......
...@@ -895,7 +895,9 @@ PyCursesWindow_GetKey(PyCursesWindowObject *self, PyObject *args) ...@@ -895,7 +895,9 @@ PyCursesWindow_GetKey(PyCursesWindowObject *self, PyObject *args)
} }
if (rtn == ERR) { if (rtn == ERR) {
/* getch() returns ERR in nodelay mode */ /* getch() returns ERR in nodelay mode */
PyErr_SetString(PyCursesError, "no input"); PyErr_CheckSignals();
if (!PyErr_Occurred())
PyErr_SetString(PyCursesError, "no input");
return NULL; return NULL;
} else if (rtn<=255) { } else if (rtn<=255) {
return Py_BuildValue("C", rtn); return Py_BuildValue("C", rtn);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment