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>2005-04-01 19:35:47 +0400
committerCorinna Vinschen <corinna@vinschen.de>2005-04-01 19:35:47 +0400
commitc9f545e20fe2994d9266d463a184731505975e84 (patch)
tree60608d4999eb1104681cd6c962409b82513f0fdd /winsup/cygserver
parentd0bed66e453ce6263ed9906e85d23c9fe857cdbc (diff)
* bsd_mutex.cc (_msleep): Whitespace fix.
* process.cc (process::process): Handle invalid signal_arrived values more gracefully.
Diffstat (limited to 'winsup/cygserver')
-rw-r--r--winsup/cygserver/ChangeLog6
-rw-r--r--winsup/cygserver/bsd_mutex.cc4
-rw-r--r--winsup/cygserver/process.cc8
3 files changed, 14 insertions, 4 deletions
diff --git a/winsup/cygserver/ChangeLog b/winsup/cygserver/ChangeLog
index 9b4ed31c9..9bf453ace 100644
--- a/winsup/cygserver/ChangeLog
+++ b/winsup/cygserver/ChangeLog
@@ -1,3 +1,9 @@
+2005-04-01 Corinna Vinschen <corinna@vinschen.de>
+
+ * bsd_mutex.cc (_msleep): Whitespace fix.
+ * process.cc (process::process): Handle invalid signal_arrived values
+ more gracefully.
+
2004-12-30 Corinna Vinschen <corinna@vinschen.de>
* bsd_mutex.cc: Include limits.h.
diff --git a/winsup/cygserver/bsd_mutex.cc b/winsup/cygserver/bsd_mutex.cc
index 27217486a..82ce4bf27 100644
--- a/winsup/cygserver/bsd_mutex.cc
+++ b/winsup/cygserver/bsd_mutex.cc
@@ -1,6 +1,6 @@
/* bsd_mutex.cc
- Copyright 2003, 2004 Red Hat Inc.
+ Copyright 2003, 2004, 2005 Red Hat Inc.
This file is part of Cygwin.
@@ -236,7 +236,7 @@ _msleep (void *ident, struct mtx *mtx, int priority,
if ((priority & PCATCH)
&& td->client->signal_arrived () != INVALID_HANDLE_VALUE)
obj_cnt = 4;
-
+
switch (WaitForMultipleObjects (obj_cnt, obj, FALSE, timo ?: INFINITE))
{
case WAIT_OBJECT_0: /* wakeup() has been called. */
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);