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:
authorCorinna Vinschen <corinna@vinschen.de>2014-04-07 15:25:58 +0400
committerCorinna Vinschen <corinna@vinschen.de>2014-04-07 15:25:58 +0400
commit584c857700c38c345299bb1b725845e2481f53c7 (patch)
treebf06a4e659eb2852cc2ac2109587f805ca91403a /winsup/cygwin/cygserver_ipc.h
parentd2ee4812487357001f07990c30a32a1346e86178 (diff)
* cygserver_ipc.h (ipc_set_proc_info): Add bool parameter to specify
whether or not to send signal_arrived. * shm.cc (client_request_shm::client_request_shm): Call ipc_set_proc_info with bool parameter set to true to not send signal_arrived.
Diffstat (limited to 'winsup/cygwin/cygserver_ipc.h')
-rw-r--r--winsup/cygwin/cygserver_ipc.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/winsup/cygwin/cygserver_ipc.h b/winsup/cygwin/cygserver_ipc.h
index 4ed3cdf51..52f9f5ddd 100644
--- a/winsup/cygwin/cygserver_ipc.h
+++ b/winsup/cygwin/cygserver_ipc.h
@@ -1,6 +1,6 @@
/* cygserver_ipc.h
- Copyright 2002, 2003, 2004, 2012, 2013 Red Hat, Inc.
+ Copyright 2002, 2003, 2004, 2012, 2013, 2014 Red Hat, Inc.
This file is part of Cygwin.
@@ -34,7 +34,7 @@ struct proc {
#ifdef __INSIDE_CYGWIN__
#include "sigproc.h"
extern inline void
-ipc_set_proc_info (proc &blk)
+ipc_set_proc_info (proc &blk, bool in_fork = false)
{
blk.cygpid = getpid ();
blk.winpid = GetCurrentProcessId ();
@@ -43,7 +43,10 @@ ipc_set_proc_info (proc &blk)
blk.gidcnt = 0;
blk.gidlist = NULL;
blk.is_admin = false;
- _my_tls.set_signal_arrived (true, blk.signal_arrived);
+ if (in_fork)
+ blk.signal_arrived = NULL;
+ else
+ _my_tls.set_signal_arrived (true, blk.signal_arrived);
}
#endif /* __INSIDE_CYGWIN__ */