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:
Diffstat (limited to 'winsup/cygwin/sigproc.cc')
-rw-r--r--winsup/cygwin/sigproc.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/winsup/cygwin/sigproc.cc b/winsup/cygwin/sigproc.cc
index 9fb1fd498..5eeef7f35 100644
--- a/winsup/cygwin/sigproc.cc
+++ b/winsup/cygwin/sigproc.cc
@@ -1014,6 +1014,15 @@ stopped_or_terminated (waitq *parent_w, _pinfo *child)
return -potential_match;
}
+static void
+talktome ()
+{
+ winpids pids;
+ for (unsigned i = 0; i < pids.npids; i++)
+ if (pids[i]->hello_pid == myself->pid)
+ pids[i]->commune_recv ();
+}
+
/* Process signals by waiting for a semaphore to become signaled.
* Then scan an in-memory array representing queued signals.
* Executes in a separate thread.
@@ -1143,6 +1152,10 @@ wait_sig (VOID *self)
strace.hello ();
break;
+ case __SIGCOMMUNE:
+ talktome ();
+ break;
+
/* A normal UNIX signal */
default:
sigproc_printf ("Got signal %d", sig);