Johannes Schindelin <[email protected]> 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 <[email protected]>
> ---
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))