From d9c3c509d6b5606909d6419ee89ddd0421172614 Mon Sep 17 00:00:00 2001 From: Takashi Yano Date: Tue, 7 Mar 2017 20:15:12 +0900 Subject: [PATCH] thread.cc: Now, pthread_cond::wait() does not return when a signal is delivered to the thread which called pthread_cond::wait(). This fixes the issue that iperf-2.0.5 is not terminated normally. --- winsup/cygwin/thread.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/winsup/cygwin/thread.cc b/winsup/cygwin/thread.cc index 7084657..48c2efd 100644 --- a/winsup/cygwin/thread.cc +++ b/winsup/cygwin/thread.cc @@ -1266,7 +1266,7 @@ pthread_cond::wait (pthread_mutex_t mutex, PLARGE_INTEGER timeout) ++mutex->condwaits; mutex->unlock (); - rv = cygwait (sem_wait, timeout, cw_cancel | cw_sig_eintr); + rv = cygwait (sem_wait, timeout, cw_cancel | cw_sig | cw_sig_restart); mtx_out.lock (); -- 2.8.3