[PATCH 2/2] lockfile: set lk->fd = -1 in 'rollback_lock_file()'
- From
- Guanqun Lu <guanqun.lu@gmail.com>
- Date
- Feb 11, 2009, 06:43 UTC
- Message-ID
- <1234334612-24907-2-git-send-email-guanqun.lu@gmail.com>
- In-Reply-To
- <1234334612-24907-1-git-send-email-guanqun.lu@gmail.com>
Post-conditions when these functions return successfully:
lk->fd == -1? lk->filename[0] == '\0'?
close_lock_file() yes no
commit_lock_file() yes yes
rollback_lock_file() no* yes[*] This commit changes this 'no' in rollback_lock_file() to 'yes', which achieves more robust and unified interface.
Signed-off-by: Guanqun Lu <guanqun.lu@gmail.com> --- lockfile.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/lockfile.c b/lockfile.c index 021c337..44e5253 100644 --- a/lockfile.c +++ b/lockfile.c @@ -243,8 +243,10 @@ int commit_locked_index(struct lock_file *lk) void rollback_lock_file(struct lock_file *lk) { if (lk->filename[0]) { - if (lk->fd >= 0) + if (lk->fd >= 0) { close(lk->fd); + lk->fd = -1; + } unlink(lk->filename); } lk->filename[0] = 0;
-- 1.6.1.2.392.gb04d1