Merge branch 'js/sign-empty-commit-fix' into maint

"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
This commit is contained in:
Junio C Hamano 2016-07-28 11:25:53 -07:00
Родитель ae8daba601 3324dd8f26
Коммит 475495ff5e
1 изменённых файлов: 6 добавлений и 1 удалений

Просмотреть файл

@ -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();