summaryrefslogtreecommitdiff
path: root/Documentation/technical
diff options
context:
space:
mode:
authorLibravatar Michael Haggerty <mhagger@alum.mit.edu>2014-10-01 12:28:21 +0200
committerLibravatar Junio C Hamano <gitster@pobox.com>2014-10-01 13:45:13 -0700
commit8a1c7533e2ee468a505656abab364780b15004fc (patch)
tree59186c6a8bf85d653d1075842ffbfaff61ca898d /Documentation/technical
parentcommit_lock_file(): inline temporary variable (diff)
downloadtgif-8a1c7533e2ee468a505656abab364780b15004fc.tar.xz
commit_lock_file(): die() if called for unlocked lockfile object
It was previously a bug to call commit_lock_file() with a lock_file object that was not active (an illegal access would happen within the function). It was presumably never done, but this would be an easy programming error to overlook. So before continuing, do a consistency check that the lock_file object really is locked. Helped-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation/technical')
-rw-r--r--Documentation/technical/api-lockfile.txt3
1 files changed, 2 insertions, 1 deletions
diff --git a/Documentation/technical/api-lockfile.txt b/Documentation/technical/api-lockfile.txt
index 99830f3bf3..6538610759 100644
--- a/Documentation/technical/api-lockfile.txt
+++ b/Documentation/technical/api-lockfile.txt
@@ -147,7 +147,8 @@ commit_lock_file::
`hold_lock_file_for_append`, close the file descriptor and
rename the lockfile to its final destination. Return 0 upon
success or a negative value on failure to `close(2)` or
- `rename(2)`.
+ `rename(2)`. It is a bug to call `commit_lock_file()` for a
+ `lock_file` object that is not currently locked.
rollback_lock_file::