From: Junio C Hamano Date: Sun, 23 Dec 2007 03:22:29 +0000 (-0800) Subject: builtin-commit: fix amending of the initial commit X-Git-Tag: v1.5.4-rc2~3^2~2 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=d616a2396456fdb6679efa0c0bee301aeb606ca8;hp=7263881253acc4c3af8b3131c60da1554b72f8b2;p=git.git builtin-commit: fix amending of the initial commit When amending initial commit without editor, the command incorrectly barfed because the check to see if there is anything to commit referenced the non-existent HEAD^1. Signed-off-by: Junio C Hamano --- diff --git a/builtin-commit.c b/builtin-commit.c index 96410de55..eebd4cf06 100644 --- a/builtin-commit.c +++ b/builtin-commit.c @@ -374,7 +374,7 @@ static int prepare_log_message(const char *index_file, const char *prefix) if (no_edit) { struct rev_info rev; - unsigned char sha1[40]; + unsigned char sha1[20]; const char *parent = "HEAD"; fclose(fp); @@ -382,12 +382,12 @@ static int prepare_log_message(const char *index_file, const char *prefix) if (!active_nr && read_cache() < 0) die("Cannot read index"); - if (get_sha1("HEAD", sha1) != 0) - return !!active_nr; - if (amend) parent = "HEAD^1"; + if (get_sha1(parent, sha1)) + return !!active_nr; + init_revisions(&rev, ""); rev.abbrev = 0; setup_revisions(0, NULL, &rev, parent);