Issue #18774: Remove last bits of GNU PTH thread code, patch by Vajrasky Kok.

This commit is contained in:
Christian Heimes 2013-08-18 12:43:24 +02:00
parent 17dd53b464
commit 44ed3de6f4
2 changed files with 2 additions and 12 deletions

View file

@ -10,6 +10,8 @@ Projected Release date: 2013-09-08
Core and Builtins Core and Builtins
----------------- -----------------
- Issue #18774: Remove last bits of GNU PTH thread code and thread_pth.h.
- Issue #16105: When a signal handler fails to write to the file descriptor - Issue #16105: When a signal handler fails to write to the file descriptor
registered with ``signal.set_wakeup_fd()``, report an exception instead registered with ``signal.set_wakeup_fd()``, report an exception instead
of ignoring the error. of ignoring the error.

View file

@ -73,10 +73,6 @@
a working implementation that works in all three cases -- the a working implementation that works in all three cases -- the
handler ignores signals if getpid() isn't the same as in the main handler ignores signals if getpid() isn't the same as in the main
thread. XXX This is a hack. thread. XXX This is a hack.
GNU pth is a user-space threading library, and as such, all threads
run within the same process. In this case, if the currently running
thread is not the main_thread, send the signal to the main_thread.
*/ */
#ifdef WITH_THREAD #ifdef WITH_THREAD
@ -214,13 +210,6 @@ signal_handler(int sig_num)
{ {
int save_errno = errno; int save_errno = errno;
#if defined(WITH_THREAD) && defined(WITH_PTH)
if (PyThread_get_thread_ident() != main_thread) {
pth_raise(*(pth_t *) main_thread, sig_num);
}
else
#endif
{
#ifdef WITH_THREAD #ifdef WITH_THREAD
/* See NOTES section above */ /* See NOTES section above */
if (getpid() == main_pid) if (getpid() == main_pid)
@ -242,7 +231,6 @@ signal_handler(int sig_num)
* makes this true. See also issue8354. */ * makes this true. See also issue8354. */
PyOS_setsig(sig_num, signal_handler); PyOS_setsig(sig_num, signal_handler);
#endif #endif
}
/* Issue #10311: asynchronously executing signal handlers should not /* Issue #10311: asynchronously executing signal handlers should not
mutate errno under the feet of unsuspecting C code. */ mutate errno under the feet of unsuspecting C code. */