Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
Merge branch 'js/sign-empty-commit-fix' into maint
author
Junio C Hamano
<gitster@pobox.com>
Thu, 28 Jul 2016 18:25:53 +0000
(11:25 -0700)
committer
Junio C Hamano
<gitster@pobox.com>
Thu, 28 Jul 2016 18:25:53 +0000
(11:25 -0700)
"git commit --amend --allow-empty-message -S" for a commit without
any message body could have misidentified where the header of the
commit object ends.
* js/sign-empty-commit-fix:
commit -S: avoid invalid pointer with empty message
commit.c
patch
|
blob
|
history
raw
(from parent 1:
ae8daba
)
diff --git
a/commit.c
b/commit.c
index 24d4715f24f06c4747eb728ffbdab2aadf715e6a..2a90e37519f0b6e9de6e30ed57afe91822441ca3 100644
(file)
--- a/
commit.c
+++ b/
commit.c
@@
-1092,9
+1092,14
@@
static int do_sign_commit(struct strbuf *buf, const char *keyid)
{
struct strbuf sig = STRBUF_INIT;
int inspos, copypos;
+ const char *eoh;
/* find the end of the header */
- inspos = strstr(buf->buf, "\n\n") - buf->buf + 1;
+ eoh = strstr(buf->buf, "\n\n");
+ if (!eoh)
+ inspos = buf->len;
+ else
+ inspos = eoh - buf->buf + 1;
if (!keyid || !*keyid)
keyid = get_signing_key();