diff options
-rw-r--r-- | Python/errors.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Python/errors.c b/Python/errors.c index f1e7151..70a85ba 100644 --- a/Python/errors.c +++ b/Python/errors.c @@ -148,7 +148,12 @@ object * err_errno(exc) object *exc; { - object *v = newtupleobject(2); + object *v; + if (errno == EINTR && intrcheck()) { + err_set(KeyboardInterrupt); + return NULL; + } + v = newtupleobject(2); if (v != NULL) { settupleitem(v, 0, newintobject((long)errno)); settupleitem(v, 1, newstringobject(strerror(errno))); |