summaryrefslogtreecommitdiffstats
path: root/winsup/cygserver/process.cc
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2005-04-01 15:35:47 +0000
committerCorinna Vinschen <corinna@vinschen.de>2005-04-01 15:35:47 +0000
commitc9f545e20fe2994d9266d463a184731505975e84 (patch)
tree60608d4999eb1104681cd6c962409b82513f0fdd /winsup/cygserver/process.cc
parentd0bed66e453ce6263ed9906e85d23c9fe857cdbc (diff)
downloadcygnal-c9f545e20fe2994d9266d463a184731505975e84.tar.gz
cygnal-c9f545e20fe2994d9266d463a184731505975e84.tar.bz2
cygnal-c9f545e20fe2994d9266d463a184731505975e84.zip
* bsd_mutex.cc (_msleep): Whitespace fix.
* process.cc (process::process): Handle invalid signal_arrived values more gracefully.
Diffstat (limited to 'winsup/cygserver/process.cc')
-rw-r--r--winsup/cygserver/process.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/winsup/cygserver/process.cc b/winsup/cygserver/process.cc
index e03370d11..6f8f40ea5 100644
--- a/winsup/cygserver/process.cc
+++ b/winsup/cygserver/process.cc
@@ -1,6 +1,6 @@
/* process.cc
- Copyright 2001, 2002, 2003, 2004 Red Hat Inc.
+ Copyright 2001, 2002, 2003, 2004, 2005 Red Hat Inc.
Written by Robert Collins <rbtcollins@hotmail.com>
@@ -60,13 +60,17 @@ process::process (const pid_t cygpid, const DWORD winpid, HANDLE signal_arrived)
else
debug_printf ("got handle %p for new cache process %d(%lu)",
_hProcess, _cygpid, _winpid);
- if (signal_arrived != INVALID_HANDLE_VALUE)
+ if (!signal_arrived)
+ system_printf ("signal_arrived NULL for process %d(%lu)",
+ _cygpid, _winpid);
+ else if (signal_arrived != INVALID_HANDLE_VALUE)
{
if (!DuplicateHandle (_hProcess, signal_arrived,
GetCurrentProcess (), &_signal_arrived,
0, FALSE, DUPLICATE_SAME_ACCESS))
system_printf ("error getting signal_arrived to server (%lu)",
GetLastError ());
+ _signal_arrived = INVALID_HANDLE_VALUE;
}
InitializeCriticalSection (&_access);
debug ("initialized (%lu)", _cygpid);