Partial patch from SF #452266, by Jason Petrone.
This changes Pythread_start_thread() to return the thread ID, or -1
for an error. (It's technically an incompatible API change, but I
doubt anyone calls it.)
diff --git a/Python/thread_pthread.h b/Python/thread_pthread.h
index 7170c8a..0fbafda 100644
--- a/Python/thread_pthread.h
+++ b/Python/thread_pthread.h
@@ -143,7 +143,7 @@
*/
-int
+long
PyThread_start_new_thread(void (*func)(void *), void *arg)
{
pthread_t th;
@@ -210,7 +210,11 @@
pthread_detach(th);
#endif
}
- return success != 0 ? 0 : 1;
+#if SIZEOF_PTHREAD_T <= SIZEOF_LONG
+ return (long) th;
+#else
+ return (long) *(long *) &th;
+#endif
}
/* XXX This implementation is considered (to quote Tim Peters) "inherently