summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/filelock.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/filelock.c b/src/filelock.c
index 5000f87a615..b79bccc65a5 100644
--- a/src/filelock.c
+++ b/src/filelock.c
@@ -278,7 +278,7 @@ lock_if_free (clasher, lfname)
lock_info_type *clasher;
register char *lfname;
{
- while (lock_file_1 (lfname, 0) == 0)
+ if (lock_file_1 (lfname, 0) == 0)
{
int locker;
@@ -293,11 +293,8 @@ lock_if_free (clasher, lfname)
}
else if (locker == 1)
return 1; /* Someone else has it. */
- else if (locker == -1)
- return -1; /* Something's wrong. */
- /* If some other error, or no such lock, try to lock again. */
- /* Is there a case where we loop forever? */
+ return -1; /* Something's wrong. */
}
return 0;
}