diff options
author | Lukas Sandström <lukass@etek.chalmers.se> | 2008-07-10 23:41:33 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-07-13 17:21:15 -0700 |
commit | e9fe804a8282107084a35d3a64e757daf217b042 (patch) | |
tree | d514a27dbe2db4e4b8e91ddd0c55500d30858055 /builtin-mailinfo.c | |
parent | b4958181a9afd0a7a2622d18416f88f9222123f0 (diff) | |
download | git-e9fe804a8282107084a35d3a64e757daf217b042.tar.gz |
git-mailinfo: Fix getting the subject from the in-body [PATCH] line
"Subject: " isn't in the static array "header", and thus
memcmp("Subject:", header[i], 7) will never match.
Even if it did so, hdr_data[] may not have been allocated if there weren't
a "Subject: " in-body when we process "[PATCH]" in the affected codepath.
Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-mailinfo.c')
-rw-r--r-- | builtin-mailinfo.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c index 962aa34c8e..13f0502b9e 100644 --- a/builtin-mailinfo.c +++ b/builtin-mailinfo.c @@ -334,7 +334,9 @@ static int check_header(char *line, unsigned linesize, char **hdr_data, int over return 1; if (!memcmp("[PATCH]", line, 7) && isspace(line[7])) { for (i = 0; header[i]; i++) { - if (!memcmp("Subject: ", header[i], 9)) { + if (!memcmp("Subject", header[i], 7)) { + if (!hdr_data[i]) + hdr_data[i] = xmalloc(linesize + 20); if (! handle_header(line, hdr_data[i], 0)) { return 1; } |