summaryrefslogtreecommitdiff
path: root/libfshelp/lock-acquire.c
diff options
context:
space:
mode:
Diffstat (limited to 'libfshelp/lock-acquire.c')
-rw-r--r--libfshelp/lock-acquire.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libfshelp/lock-acquire.c b/libfshelp/lock-acquire.c
index 3d8df550..bad1114d 100644
--- a/libfshelp/lock-acquire.c
+++ b/libfshelp/lock-acquire.c
@@ -111,8 +111,8 @@ fshelp_acquire_lock (struct lock_box *box, int *user, struct mutex *mut,
}
else if (flags & LOCK_EX)
{
- /* Wait for any shared locks to finish. */
- while (box->type == LOCK_SH)
+ /* Wait for any shared (and exclusive) locks to finish. */
+ while (box->type != LOCK_UN)
{
if (flags & LOCK_NB)
return EWOULDBLOCK;