diff options
Diffstat (limited to 'libfshelp')
-rw-r--r-- | libfshelp/ChangeLog | 5 | ||||
-rw-r--r-- | libfshelp/lock-acquire.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/libfshelp/ChangeLog b/libfshelp/ChangeLog index a7cd8b0e..997b1a3b 100644 --- a/libfshelp/ChangeLog +++ b/libfshelp/ChangeLog @@ -1,3 +1,8 @@ +Thu Oct 10 17:12:19 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> + + * lock-acquire.c (fshelp_acquire_lock): Use hurd_condition_wait so + we are properly interruptible. + Thu Sep 12 16:21:51 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * Makefile (HURDLIBS): New variable. diff --git a/libfshelp/lock-acquire.c b/libfshelp/lock-acquire.c index 9c81634a..42e75dd0 100644 --- a/libfshelp/lock-acquire.c +++ b/libfshelp/lock-acquire.c @@ -80,7 +80,8 @@ fshelp_acquire_lock (struct lock_box *box, int *user, struct mutex *mut, if (flags & LOCK_NB) return EWOULDBLOCK; box->waiting = 1; - condition_wait (&box->wait, mut); + if (hurd_condition_wait (&box->wait, mut)) + return EINTR; } /* If we have a shared lock, release it. */ @@ -116,7 +117,8 @@ fshelp_acquire_lock (struct lock_box *box, int *user, struct mutex *mut, else { box->waiting = 1; - condition_wait (&box->wait, mut); + if (hurd_condition_wait (&box->wait, mut)) + return EINTR; } } box->type = LOCK_EX; |