summaryrefslogtreecommitdiff
path: root/refs.c
diff options
context:
space:
mode:
authorMichael Haggerty <mhagger@alum.mit.edu>2015-05-09 15:20:39 (GMT)
committerJunio C Hamano <gitster@pobox.com>2015-05-13 04:28:02 (GMT)
commitba43b7f29c59f75cf5f28af3a02d16c08937e439 (patch)
tree4e33f6eabeca3db62f89f8ce679d6d812afaa98a /refs.c
parentad4cd6c29743274001cce323b670f7fb0c035ff1 (diff)
downloadgit-ba43b7f29c59f75cf5f28af3a02d16c08937e439.zip
git-ba43b7f29c59f75cf5f28af3a02d16c08937e439.tar.gz
git-ba43b7f29c59f75cf5f28af3a02d16c08937e439.tar.bz2
rename_ref(): inline calls to write_ref_sha1() from this function
Most of what it does is unneeded from these call sites. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'refs.c')
-rw-r--r--refs.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/refs.c b/refs.c
index 3db88e0..ad4b6d5 100644
--- a/refs.c
+++ b/refs.c
@@ -2773,8 +2773,9 @@ static int rename_ref_available(const char *oldname, const char *newname)
return ret;
}
-static int write_ref_sha1(struct ref_lock *lock, const unsigned char *sha1,
- const char *logmsg);
+static int write_ref_to_lockfile(struct ref_lock *lock, const unsigned char *sha1);
+static int commit_ref_update(struct ref_lock *lock,
+ const unsigned char *sha1, const char *logmsg);
int rename_ref(const char *oldrefname, const char *newrefname, const char *logmsg)
{
@@ -2832,7 +2833,9 @@ int rename_ref(const char *oldrefname, const char *newrefname, const char *logms
goto rollback;
}
hashcpy(lock->old_sha1, orig_sha1);
- if (write_ref_sha1(lock, orig_sha1, logmsg)) {
+
+ if (write_ref_to_lockfile(lock, orig_sha1) ||
+ commit_ref_update(lock, orig_sha1, logmsg)) {
error("unable to write current sha1 into %s", newrefname);
goto rollback;
}
@@ -2848,7 +2851,8 @@ int rename_ref(const char *oldrefname, const char *newrefname, const char *logms
flag = log_all_ref_updates;
log_all_ref_updates = 0;
- if (write_ref_sha1(lock, orig_sha1, NULL))
+ if (write_ref_to_lockfile(lock, orig_sha1) ||
+ commit_ref_update(lock, orig_sha1, NULL))
error("unable to write current sha1 into %s", oldrefname);
log_all_ref_updates = flag;