Johannes Schindelin <[email protected]> writes:
> Reported via Coverity.
>
> Signed-off-by: Johannes Schindelin <[email protected]>
> ---
> builtin/mailsplit.c | 2 +-
> mailinfo.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
Good find. I'd retitle with a prefix
mailinfo & mailsplit: check for EOF while parsing
so that it is clear that this patch is about lower level machinery
(as oppose to something like "git am").
Thanks.
>
> diff --git a/builtin/mailsplit.c b/builtin/mailsplit.c
> index 30681681c13..c0d88f97512 100644
> --- a/builtin/mailsplit.c
> +++ b/builtin/mailsplit.c
> @@ -232,7 +232,7 @@ static int split_mbox(const char *file, const char *dir,
> int allow_bare,
>
> do {
> peek = fgetc(f);
> - } while (isspace(peek));
> + } while (peek >= 0 && isspace(peek));
> ungetc(peek, f);
>
> if (strbuf_getwholeline(&buf, f, '\n')) {
> diff --git a/mailinfo.c b/mailinfo.c
> index 68037758f2f..60dcad7b714 100644
> --- a/mailinfo.c
> +++ b/mailinfo.c
> @@ -1099,7 +1099,7 @@ int mailinfo(struct mailinfo *mi, const char *msg,
> const char *patch)
>
> do {
> peek = fgetc(mi->input);
> - } while (isspace(peek));
> + } while (peek >= 0 && isspace(peek));
> ungetc(peek, mi->input);
>
> /* process the email header */