Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2008-02-20 00:42:48 +0300
committerChristopher Faylor <me@cgf.cx>2008-02-20 00:42:48 +0300
commit9feffba7d9efa09d0a0b3a7293f52418253d0d99 (patch)
tree4c1b533dda1b94ebe30a040e9e0fff4b7736e8bb /winsup/cygwin/sigproc.cc
parent344f17f1fa35615d04034e52d545a8cb8d4aa7e9 (diff)
* sigproc.cc (sig_send): Use sigmask of target thread if it is specified
otherwise default to main sigmask.
Diffstat (limited to 'winsup/cygwin/sigproc.cc')
-rw-r--r--winsup/cygwin/sigproc.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc
index af9cd0682..a6d8fed17 100644
--- a/winsup/cygwin/sigproc.cc
+++ b/winsup/cygwin/sigproc.cc
@@ -663,7 +663,7 @@ sig_send (_pinfo *p, siginfo_t& si, _cygtls *tls)
else if (si.si_signo == __SIGPENDING)
pack.mask = &pending;
else if (si.si_signo == __SIGFLUSH || si.si_signo > 0)
- pack.mask = &_my_tls.sigmask;
+ pack.mask = tls ? &tls->sigmask : &_main_tls->sigmask;
else
pack.mask = NULL;
@@ -673,7 +673,7 @@ sig_send (_pinfo *p, siginfo_t& si, _cygtls *tls)
if (!pack.si.si_uid)
pack.si.si_uid = myself->uid;
pack.pid = myself->pid;
- pack.tls = (_cygtls *) tls;
+ pack.tls = tls;
if (wait_for_completion)
{
pack.wakeup = CreateEvent (&sec_none_nih, FALSE, FALSE, NULL);