[Python-checkins] bpo-31893: Fix a backporting error in 8cbf4e10646c3f5b8f0d274c2d7dea5bb6305f57. (#4219)

Serhiy Storchaka webhook-mailer at python.org
Wed Nov 1 11:43:14 EDT 2017


https://github.com/python/cpython/commit/ce51890894be46f8f9d991a1d0ea1455fc41ccdc
commit: ce51890894be46f8f9d991a1d0ea1455fc41ccdc
branch: 2.7
author: Serhiy Storchaka <storchaka at gmail.com>
committer: GitHub <noreply at github.com>
date: 2017-11-01T17:43:07+02:00
summary:

bpo-31893: Fix a backporting error in 8cbf4e10646c3f5b8f0d274c2d7dea5bb6305f57. (#4219)

files:
M Modules/selectmodule.c

diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c
index 6cd32cd8a93..1dec6a120d0 100644
--- a/Modules/selectmodule.c
+++ b/Modules/selectmodule.c
@@ -1352,9 +1352,12 @@ kqueue_event_init(kqueue_event_Object *self, PyObject *args, PyObject *kwds)
     if (PyInt_Check(pfd)) {
         self->e.ident = PyInt_AsUnsignedLongMask(pfd);
     }
-    else {
-    if (PyInt_Check(pfd) || PyLong_Check(pfd)) {
-        self->e.ident = PyLong_AsSize_t(pfd);
+    else if (PyLong_Check(pfd)) {
+#if defined(HAVE_LONG_LONG) && (SIZEOF_UINTPTR_T == SIZEOF_LONG_LONG)
+        self->e.ident = PyLong_AsUnsignedLongLongMask(pfd);
+#else
+        self->e.ident = PyLong_AsUnsignedLongMask(pfd);
+#endif
     }
     else {
         self->e.ident = PyObject_AsFileDescriptor(pfd);



More information about the Python-checkins mailing list