mailinfo: with -b, keep space after [foo]
The logic for the -b mode, where [PATCH] is dropped but [foo] is not, silently ate all spaces after the ]. Fix this by keeping the next isspace() character, if there is any. Being more thorough is pointless, as the later cleanup_space() call will normalize any sequence of whitespace to a single ' '. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
f7e5ea171b
commit
ee2d1cb402
@ -250,8 +250,17 @@ static void cleanup_subject(struct strbuf *subject)
|
||||
(7 <= remove &&
|
||||
memmem(subject->buf + at, remove, "PATCH", 5)))
|
||||
strbuf_remove(subject, at, remove);
|
||||
else
|
||||
else {
|
||||
at += remove;
|
||||
/*
|
||||
* If the input had a space after the ], keep
|
||||
* it. We don't bother with finding the end of
|
||||
* the space, since we later normalize it
|
||||
* anyway.
|
||||
*/
|
||||
if (isspace(subject->buf[at]))
|
||||
at += 1;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
|
@ -244,7 +244,7 @@ test_expect_success 'am --keep really keeps the subject' '
|
||||
grep "Re: Re: Re: \[PATCH 1/5 v2\] \[foo\] third" actual
|
||||
'
|
||||
|
||||
test_expect_failure 'am --keep-non-patch really keeps the non-patch part' '
|
||||
test_expect_success 'am --keep-non-patch really keeps the non-patch part' '
|
||||
rm -fr .git/rebase-apply &&
|
||||
git reset --hard &&
|
||||
git checkout HEAD^ &&
|
||||
|
Loading…
Reference in New Issue
Block a user