From d59087de5bb115575ff80996879c64f830fc8b86 Mon Sep 17 00:00:00 2001
From: Charles-Francois Natali <cf.natali@gmail.com>
Date: Mon, 20 May 2013 17:31:06 +0200
Subject: Issue #17914: Remove OS-X special-case, and use the correct int type.

---
 Modules/posixmodule.c | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index c24e162..9455f85 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -10324,12 +10324,12 @@ established.");
     defined(__FreeBSD__)   || \
     defined(__NetBSD__)    || \
     defined(__APPLE__)
-static long
+static int
 _bsd_cpu_count(void)
 {
-    long ncpu = 0;
+    int ncpu = 0;
     int mib[2];
-    size_t len = sizeof(int);
+    size_t len = sizeof(ncpu);
 
     mib[0] = CTL_HW;
     mib[1] = HW_NCPU;
@@ -10343,7 +10343,7 @@ _bsd_cpu_count(void)
 static PyObject *
 posix_cpu_count(PyObject *self)
 {
-    long ncpu = 0;
+    int ncpu = 0;
 #ifdef MS_WINDOWS
     SYSTEM_INFO sysinfo;
     GetSystemInfo(&sysinfo);
@@ -10352,14 +10352,11 @@ posix_cpu_count(PyObject *self)
     ncpu = mpctl(MPC_GETNUMSPUS, NULL, NULL);
 #elif defined(HAVE_SYSCONF) && defined(_SC_NPROCESSORS_ONLN)
     ncpu = sysconf(_SC_NPROCESSORS_ONLN);
-#elif defined(__APPLE__)
-    size_t len = sizeof(int);
-    if (sysctlnametomib("hw.logicalcpu", &ncpu, &len, NULL, 0) != 0)
-        ncpu = _bsd_cpu_count();
 #elif defined(__DragonFly__) || \
       defined(__OpenBSD__)   || \
       defined(__FreeBSD__)   || \
-      defined(__NetBSD__)
+      defined(__NetBSD__)    || \
+      defined(__APPLE__)
     ncpu = _bsd_cpu_count();
 #endif
     if (ncpu >= 1)
-- 
cgit v0.12

