diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2016-12-27 15:09:36 +0200 |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2016-12-27 15:09:36 +0200 |
commit | 994f04dbf576f4ebafb9de2bc6821e15cb0de0ea (patch) | |
tree | 4967ed9c9688f7fe035c646de993c337141051b0 /Modules/termios.c | |
parent | 58c2c6ebb893917e759cc1401b0d862b3f7c1a94 (diff) | |
download | cpython-git-994f04dbf576f4ebafb9de2bc6821e15cb0de0ea.tar.gz |
Issue #28998: More APIs now support longs as well as ints.
Diffstat (limited to 'Modules/termios.c')
-rw-r--r-- | Modules/termios.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Modules/termios.c b/Modules/termios.c index 57f30dc4cd..9d4d780dca 100644 --- a/Modules/termios.c +++ b/Modules/termios.c @@ -185,8 +185,11 @@ termios_tcsetattr(PyObject *self, PyObject *args) if (PyString_Check(v) && PyString_Size(v) == 1) mode.c_cc[i] = (cc_t) * PyString_AsString(v); - else if (PyInt_Check(v)) + else if (PyInt_Check(v) || PyLong_Check(v)) { mode.c_cc[i] = (cc_t) PyInt_AsLong(v); + if (mode.c_cc[i] == (cc_t) -1 && PyErr_Occurred()) + return NULL; + } else { PyErr_SetString(PyExc_TypeError, "tcsetattr: elements of attributes must be characters or integers"); |