Johannes Schindelin <johannes.schinde...@gmx.de> writes:

> It is actually not safe to look for a commit message by looking for the
> first empty line and skipping it.
>
> The find_commit_subject() function looks more carefully, so let's use
> it. Since we are interested in the entire commit message, we re-compute
> the string length after verifying that the commit subject is not empty
> (in which case the entire commit message would be empty, something that
> should not happen but that we want to handle gracefully).
>
> Signed-off-by: Johannes Schindelin <johannes.schinde...@gmx.de>
> ---

Very sensible.

>  sequencer.c | 11 +++--------
>  1 file changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/sequencer.c b/sequencer.c
> index 3eededcb98..720857beda 100644
> --- a/sequencer.c
> +++ b/sequencer.c
> @@ -703,14 +703,9 @@ static int do_pick_commit(enum todo_command command, 
> struct commit *commit,
>               next = commit;
>               next_label = msg.label;
>  
> -             /*
> -              * Append the commit log message to msgbuf; it starts
> -              * after the tree, parent, author, committer
> -              * information followed by "\n\n".
> -              */
> -             p = strstr(msg.message, "\n\n");
> -             if (p)
> -                     strbuf_addstr(&msgbuf, skip_blank_lines(p + 2));
> +             /* Append the commit log message to msgbuf. */
> +             if (find_commit_subject(msg.message, &p))
> +                     strbuf_addstr(&msgbuf, p);
>  
>               if (opts->record_origin) {
>                       if (!has_conforming_footer(&msgbuf, NULL, 0))

Reply via email to