summaryrefslogtreecommitdiff
path: root/lockfile.c
diff options
context:
space:
mode:
authorMichael Haggerty <mhagger@alum.mit.edu>2014-10-01 12:28:39 +0200
committerJunio C Hamano <gitster@pobox.com>2014-10-01 13:53:54 -0700
commitec38b4e482e96e62762452cab5714e55abdb48c3 (patch)
tree7b9e0268013d641289da53c9630ebd7af5aba8d7 /lockfile.c
parent316683bd37608e31cc3f5e932c4e5c7dde1b39f0 (diff)
downloadgit-ec38b4e482e96e62762452cab5714e55abdb48c3.tar.gz
get_locked_file_path(): new function
Add a function to return the path of the file that is locked by a lock_file object. This reduces the knowledge that callers have to have about the lock_file layout. Suggested-by: Ronnie Sahlberg <sahlberg@google.com> Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'lockfile.c')
-rw-r--r--lockfile.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/lockfile.c b/lockfile.c
index 0a8c3c881e..c51c6ec69d 100644
--- a/lockfile.c
+++ b/lockfile.c
@@ -257,6 +257,15 @@ int hold_lock_file_for_append(struct lock_file *lk, const char *path, int flags)
return fd;
}
+char *get_locked_file_path(struct lock_file *lk)
+{
+ if (!lk->active)
+ die("BUG: get_locked_file_path() called for unlocked object");
+ if (lk->filename.len <= LOCK_SUFFIX_LEN)
+ die("BUG: get_locked_file_path() called for malformed lock object");
+ return xmemdupz(lk->filename.buf, lk->filename.len - LOCK_SUFFIX_LEN);
+}
+
int close_lock_file(struct lock_file *lk)
{
int fd = lk->fd;