Skip to content

Commit

Permalink
Merge branch 'rs/ref-update-check-errors-early'
Browse files Browse the repository at this point in the history
* rs/ref-update-check-errors-early:
  commit.c: check for lock error and return early
  sequencer.c: check for lock failure and bail early in fast_forward_to
  • Loading branch information
Junio C Hamano committed Jun 3, 2014
2 parents 53f52cd + 55a5c8d commit 2e4b5de
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 deletions.
8 changes: 4 additions & 4 deletions builtin/commit.c
Original file line number Diff line number Diff line change
Expand Up @@ -1672,6 +1672,10 @@ int cmd_commit(int argc, const char **argv, const char *prefix)
? NULL
: current_head->object.sha1,
0, NULL);
if (!ref_lock) {
rollback_index_files();
die(_("cannot lock HEAD ref"));
}

nl = strchr(sb.buf, '\n');
if (nl)
Expand All @@ -1681,10 +1685,6 @@ int cmd_commit(int argc, const char **argv, const char *prefix)
strbuf_insert(&sb, 0, reflog_msg, strlen(reflog_msg));
strbuf_insert(&sb, strlen(reflog_msg), ": ", 2);

if (!ref_lock) {
rollback_index_files();
die(_("cannot lock HEAD ref"));
}
if (write_ref_sha1(ref_lock, sha1, sb.buf) < 0) {
rollback_index_files();
die(_("cannot update HEAD ref"));
Expand Down
4 changes: 4 additions & 0 deletions sequencer.c
Original file line number Diff line number Diff line change
Expand Up @@ -281,8 +281,12 @@ static int fast_forward_to(const unsigned char *to, const unsigned char *from,
exit(1); /* the callee should have complained already */
ref_lock = lock_any_ref_for_update("HEAD", unborn ? null_sha1 : from,
0, NULL);
if (!ref_lock)
return error(_("Failed to lock HEAD during fast_forward_to"));

strbuf_addf(&sb, "%s: fast-forward", action_name(opts));
ret = write_ref_sha1(ref_lock, to, sb.buf);

strbuf_release(&sb);
return ret;
}
Expand Down

0 comments on commit 2e4b5de

Please sign in to comment.