diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2015-10-23 14:30:40 +0200 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2015-10-23 14:30:40 +0200 |
commit | cf51db8baafb5c642f8c976f479a9af9e6f52fd3 (patch) | |
tree | 31f33f83e247d788ec40b2dc34185bae87cf6240 /winsup/cygwin/cygtls.cc | |
parent | 505812d04283d9276bb462683bbfaf52b241ac05 (diff) | |
download | newlib-cf51db8baafb5c642f8c976f479a9af9e6f52fd3.zip newlib-cf51db8baafb5c642f8c976f479a9af9e6f52fd3.tar.gz newlib-cf51db8baafb5c642f8c976f479a9af9e6f52fd3.tar.bz2 |
Clear pending signals targeting exiting threadnewlib-snapshot-20151023
* cygtls.cc (_cygtls::remove): Call remove_pending_sigs.
* cygtls.h (_cygtls::remove_pending_sigs): Declare.
* sigproc.cc (pending_signals::clear): Define new method taking a
_cygtls pointer argument. Drop pending signals for that thread.
(_cygtls::remove_pending_sigs): Call pending_signals::clear for this
thread.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'winsup/cygwin/cygtls.cc')
-rw-r--r-- | winsup/cygwin/cygtls.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/winsup/cygwin/cygtls.cc b/winsup/cygwin/cygtls.cc index cb8c24e..c94578f 100644 --- a/winsup/cygwin/cygtls.cc +++ b/winsup/cygwin/cygtls.cc @@ -187,6 +187,7 @@ _cygtls::remove (DWORD wait) /* FIXME: Need some sort of atthreadexit function to allow things like select to control this themselves. */ + remove_pending_sigs (); if (signal_arrived) { HANDLE h = signal_arrived; |