bpo-31893: Fix a backporting error in 8cbf4e10646c3f5b8f0d274c2d7dea5bb6305f57. (#4219)
diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c
index 6cd32cd..1dec6a1 100644
--- a/Modules/selectmodule.c
+++ b/Modules/selectmodule.c
@@ -1352,9 +1352,12 @@
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);