Re: [PATCH v3 1/2] sequencer: replace error() with BUG() in update_squash_messages()
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 30, 2025, 13:35 UTC
- Message-ID
- <xmqq7c1ygr1k.fsf@gitster.g>
- In-Reply-To
- <b812f973d18fbef104f2d30f4719fcc58c8578c0.1748569955.git.gitgitgadget@gmail.com>
"Lidong Yan via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 6 quoted lines
> @@ -2067,6 +2067,9 @@ static int update_squash_messages(struct repository *r,
> const char *message, *body;
> const char *encoding = get_commit_output_encoding();
>
> + if (!is_fixup(command))
> + BUG("unknown command: %d", command);This is not necessarily unknown. It may be a known one like TODO_PICK but the reason why we are rejecting it is because it is not either FIXUP or SQUASH, so we should say so. BUG() is a message to our developers, so a clear message that tells them that they are not supposed to pass anything but FIXUP/SQUASH is far better than saying "unknown".
Show 13 quoted lines
> if (ctx->current_fixup_count > 0) {
> struct strbuf header = STRBUF_INIT;
> char *eol;
> @@ -2134,8 +2137,7 @@ static int update_squash_messages(struct repository *r,
> strbuf_addstr(&buf, "\n\n");
> strbuf_add_commented_lines(&buf, body, strlen(body),
> comment_line_str);
> - } else
> - return error(_("unknown command: %d"), command);
> + }
> repo_unuse_commit_buffer(r, commit, message);
>
> if (!res)