summaryrefslogtreecommitdiffstats
path: root/lib/locking/file_locking.c
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2007-07-20 12:12:52 +0000
committerJim Meyering <jim@meyering.net>2007-07-20 12:12:52 +0000
commit57015b12e2f6da25c2556d4c1a5fbe5b3ea7812d (patch)
tree7576604ece2d16fda6216a6f7c673f3096848f2b /lib/locking/file_locking.c
parent35b13fdb5ee3cd6f0ef80b2d8fe97c80fa3bbe96 (diff)
downloadlvm2-57015b12e2f6da25c2556d4c1a5fbe5b3ea7812d.tar.gz
lvm2-57015b12e2f6da25c2556d4c1a5fbe5b3ea7812d.tar.xz
lvm2-57015b12e2f6da25c2556d4c1a5fbe5b3ea7812d.zip
Don't leak a file descriptor in _lock_file when flock fails.
* lib/locking/file_locking.c (_lock_file): Close fd upon flock failure.
Diffstat (limited to 'lib/locking/file_locking.c')
-rw-r--r--lib/locking/file_locking.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/locking/file_locking.c b/lib/locking/file_locking.c
index 3126411e..1ac76c17 100644
--- a/lib/locking/file_locking.c
+++ b/lib/locking/file_locking.c
@@ -185,6 +185,7 @@ static int _lock_file(const char *file, int flags)
if (r) {
errno = old_errno;
log_sys_error("flock", ll->res);
+ close(ll->lf);
goto err;
}