diff options
author | Junio C Hamano <junkio@cox.net> | 2006-08-07 17:02:07 -0700 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-08-07 17:02:07 -0700 |
commit | 9673198ee867cea4ed70d2cf54c1a2eb8f27bb46 (patch) | |
tree | f06a5be02102b0a78f56e18beffa8fa5c3e70b6e /refs.c | |
parent | 96bc4de85cf810db5c7cd94bf0688a98a64a0bc7 (diff) | |
parent | 7c49cb288173ab5264b3b9e4257aeeb13388334c (diff) | |
download | git-9673198ee867cea4ed70d2cf54c1a2eb8f27bb46.tar.gz |
Merge branch 'master' into pb/gitpm
This is to resolve the conflicts with Ryan's annotate updates early.
Diffstat (limited to 'refs.c')
-rw-r--r-- | refs.c | 18 |
1 files changed, 11 insertions, 7 deletions
@@ -294,6 +294,7 @@ static struct ref_lock *lock_ref_sha1_basic(const char *path, int plen, const unsigned char *old_sha1, int mustexist) { + const char *orig_path = path; struct ref_lock *lock; struct stat st; @@ -303,7 +304,11 @@ static struct ref_lock *lock_ref_sha1_basic(const char *path, plen = strlen(path) - plen; path = resolve_ref(path, lock->old_sha1, mustexist); if (!path) { + int last_errno = errno; + error("unable to resolve reference %s: %s", + orig_path, strerror(errno)); unlock_ref(lock); + errno = last_errno; return NULL; } lock->lk = xcalloc(1, sizeof(struct lock_file)); @@ -362,7 +367,7 @@ static int log_ref_write(struct ref_lock *lock, int logfd, written, oflags = O_APPEND | O_WRONLY; unsigned maxlen, len; char *logrec; - const char *comitter; + const char *committer; if (log_all_ref_updates) { if (safe_create_leading_directories(lock->log_file) < 0) @@ -379,24 +384,23 @@ static int log_ref_write(struct ref_lock *lock, lock->log_file, strerror(errno)); } - setup_ident(); - comitter = git_committer_info(1); + committer = git_committer_info(1); if (msg) { - maxlen = strlen(comitter) + strlen(msg) + 2*40 + 5; + maxlen = strlen(committer) + strlen(msg) + 2*40 + 5; logrec = xmalloc(maxlen); len = snprintf(logrec, maxlen, "%s %s %s\t%s\n", sha1_to_hex(lock->old_sha1), sha1_to_hex(sha1), - comitter, + committer, msg); } else { - maxlen = strlen(comitter) + 2*40 + 4; + maxlen = strlen(committer) + 2*40 + 4; logrec = xmalloc(maxlen); len = snprintf(logrec, maxlen, "%s %s %s\n", sha1_to_hex(lock->old_sha1), sha1_to_hex(sha1), - comitter); + committer); } written = len <= maxlen ? write(logfd, logrec, len) : -1; free(logrec); |