From: Junio C Hamano <gitster@pobox.com>
To: Siddharth Asthana <siddharthasthana31@gmail.com>
Cc: git@vger.kernel.org, phillip.wood123@gmail.com,
congdanhqx@gmail.com, christian.couder@gmail.com,
avarab@gmail.com, Johannes.Schindelin@gmx.de,
johncai86@gmail.com
Subject: Re: [PATCH v5 1/4] revision: improve commit_rewrite_person()
Date: Sun, 17 Jul 2022 15:11:30 -0700 [thread overview]
Message-ID: <xmqqo7xnv17x.fsf@gitster.g> (raw)
In-Reply-To: <20220716074055.1786231-2-siddharthasthana31@gmail.com> (Siddharth Asthana's message of "Sat, 16 Jul 2022 13:10:52 +0530")
Siddharth Asthana <siddharthasthana31@gmail.com> writes:
> +/*
> + * Returns the difference between the new and old length of the ident line.
> + */
> +static ssize_t rewrite_ident_line(const char *person, struct strbuf *buf,
> + struct string_list *mailmap)
Line-folding is a good idea, but why do we use such a deep
indentation? In this project, tab-width is 8.
> +static void commit_rewrite_person(struct strbuf *buf, const char **header,
> + struct string_list *mailmap)
Likewise.
> +{
> + size_t buf_offset = 0;
> +
> + if (!mailmap)
> + return;
> +
> + for (;;) {
> + const char *person, *line;
> + size_t i;
> +
> + line = buf->buf + buf_offset;
> + if (!*line || *line == '\n')
> + return; /* End of header */
> +
> + for (i = 0; header[i]; i++)
> + if (skip_prefix(line, header[i], &person)) {
> + rewrite_ident_line(person, buf, mailmap);
If the return value of rewrite_ident_line() is never used, perhaps
stop computing the return value in that function and make it return
"void". I personally thought it was clever to return "how much does
the ident part grew/shrunk?" from the helper and use it to adjust,
but I do not mind to scrap the clever-ness if some folks may find it
harder to understand.
> + break;
> + }
> +
> + buf_offset = strchrnul(buf->buf + buf_offset, '\n') - buf->buf;
And this is a "easier-to-understand but need to scan the buffer once
again, only to figure out what we ought to already know" version.
> + if (buf->buf[buf_offset] == '\n')
> + ++buf_offset;
Prefer post-increment when there is no reason to favor pre-increment
over post-increment, i.e. write this as "buf_offset++".
> + }
> +}
> +
> static int commit_match(struct commit *commit, struct rev_info *opt)
> {
> int retval;
> @@ -3832,11 +3862,12 @@ static int commit_match(struct commit *commit, struct rev_info *opt)
> strbuf_addstr(&buf, message);
>
> if (opt->grep_filter.header_list && opt->mailmap) {
> + const char *commit_headers[] = { "author ", "committer ", NULL };
> +
> if (!buf.len)
> strbuf_addstr(&buf, message);
>
> - commit_rewrite_person(&buf, "\nauthor ", opt->mailmap);
> - commit_rewrite_person(&buf, "\ncommitter ", opt->mailmap);
> + commit_rewrite_person(&buf, commit_headers, opt->mailmap);
> }
>
> /* Append "fake" message parts as needed */
next prev parent reply other threads:[~2022-07-17 22:11 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-30 14:24 [PATCH 0/3] Add support for mailmap in cat-file Siddharth Asthana
2022-06-30 14:24 ` [PATCH 1/3] ident: move commit_rewrite_person() to ident.c Siddharth Asthana
2022-06-30 16:00 ` Đoàn Trần Công Danh
2022-06-30 23:22 ` Junio C Hamano
2022-06-30 14:24 ` [PATCH 2/3] ident: rename commit_rewrite_person() to rewrite_ident_line() Siddharth Asthana
2022-06-30 15:33 ` Phillip Wood
2022-06-30 16:55 ` Christian Couder
2022-06-30 23:31 ` Junio C Hamano
2022-06-30 14:24 ` [PATCH 3/3] cat-file: add mailmap support Siddharth Asthana
2022-06-30 15:50 ` Phillip Wood
2022-06-30 16:36 ` Phillip Wood
2022-06-30 17:07 ` Christian Couder
2022-06-30 21:33 ` Junio C Hamano
2022-07-07 9:15 ` Christian Couder
2022-06-30 23:36 ` Ævar Arnfjörð Bjarmason
2022-06-30 23:53 ` Junio C Hamano
2022-07-07 9:02 ` Christian Couder
2022-06-30 23:41 ` Junio C Hamano
2022-06-30 21:18 ` [PATCH 0/3] Add support for mailmap in cat-file Junio C Hamano
2022-07-07 16:15 ` [PATCH v2 0/4] " Siddharth Asthana
2022-07-07 16:15 ` [PATCH v2 1/4] revision: improve commit_rewrite_person() Siddharth Asthana
2022-07-07 21:52 ` Junio C Hamano
2022-07-08 14:50 ` Đoàn Trần Công Danh
[not found] ` <CAP8UFD116xMnp27pxW8WNDf6PRJxnnwWtcy2TNHU_KyV2ZVA1g@mail.gmail.com>
2022-07-09 1:02 ` Đoàn Trần Công Danh
2022-07-09 5:04 ` Christian Couder
2022-07-07 16:15 ` [PATCH v2 2/4] ident: move commit_rewrite_person() to ident.c Siddharth Asthana
2022-07-07 16:15 ` [PATCH v2 3/4] ident: rename commit_rewrite_person() to apply_mailmap_to_header() Siddharth Asthana
2022-07-07 16:15 ` [PATCH v2 4/4] cat-file: add mailmap support Siddharth Asthana
2022-07-07 21:55 ` Junio C Hamano
2022-07-08 11:53 ` Johannes Schindelin
2022-07-07 22:06 ` [PATCH v2 0/4] Add support for mailmap in cat-file Junio C Hamano
2022-07-07 22:58 ` Junio C Hamano
2022-07-09 15:41 ` [PATCH v3 " Siddharth Asthana
2022-07-09 15:41 ` [PATCH v3 1/4] revision: improve commit_rewrite_person() Siddharth Asthana
2022-07-12 16:29 ` Johannes Schindelin
2022-07-09 15:41 ` [PATCH v3 2/4] ident: move commit_rewrite_person() to ident.c Siddharth Asthana
2022-07-09 15:41 ` [PATCH v3 3/4] ident: rename commit_rewrite_person() to apply_mailmap_to_header() Siddharth Asthana
2022-07-09 15:41 ` [PATCH v3 4/4] cat-file: add mailmap support Siddharth Asthana
2022-07-10 5:34 ` [PATCH v3 0/4] Add support for mailmap in cat-file Junio C Hamano
2022-07-12 12:34 ` Johannes Schindelin
2022-07-12 14:16 ` Junio C Hamano
2022-07-12 16:01 ` Siddharth Asthana
2022-07-12 16:06 ` Junio C Hamano
2022-07-12 16:06 ` [PATCH v4 " Siddharth Asthana
2022-07-12 16:06 ` [PATCH v4 1/4] revision: improve commit_rewrite_person() Siddharth Asthana
2022-07-13 1:25 ` Ævar Arnfjörð Bjarmason
2022-07-13 12:18 ` Christian Couder
2022-07-14 21:02 ` Junio C Hamano
2022-07-12 16:06 ` [PATCH v4 2/4] ident: move commit_rewrite_person() to ident.c Siddharth Asthana
2022-07-12 16:06 ` [PATCH v4 3/4] ident: rename commit_rewrite_person() to apply_mailmap_to_header() Siddharth Asthana
2022-07-13 1:25 ` Ævar Arnfjörð Bjarmason
2022-07-13 13:29 ` Christian Couder
2022-07-12 16:06 ` [PATCH v4 4/4] cat-file: add mailmap support Siddharth Asthana
2022-07-16 7:40 ` [PATCH v5 0/4] Add support for mailmap in cat-file Siddharth Asthana
2022-07-16 7:40 ` [PATCH v5 1/4] revision: improve commit_rewrite_person() Siddharth Asthana
2022-07-17 22:11 ` Junio C Hamano [this message]
2022-07-16 7:40 ` [PATCH v5 2/4] ident: move commit_rewrite_person() to ident.c Siddharth Asthana
2022-07-16 7:40 ` [PATCH v5 3/4] ident: rename commit_rewrite_person() to apply_mailmap_to_header() Siddharth Asthana
2022-07-16 7:40 ` [PATCH v5 4/4] cat-file: add mailmap support Siddharth Asthana
2022-07-18 19:50 ` [PATCH v6 0/4] Add support for mailmap in cat-file Siddharth Asthana
2022-07-18 19:50 ` [PATCH v6 1/4] revision: improve commit_rewrite_person() Siddharth Asthana
2022-07-18 19:51 ` [PATCH v6 2/4] ident: move commit_rewrite_person() to ident.c Siddharth Asthana
2022-07-18 19:51 ` [PATCH v6 3/4] ident: rename commit_rewrite_person() to apply_mailmap_to_header() Siddharth Asthana
2022-07-18 19:51 ` [PATCH v6 4/4] cat-file: add mailmap support Siddharth Asthana
2022-07-25 18:58 ` [PATCH v6 0/4] Add support for mailmap in cat-file Junio C Hamano
2022-07-28 19:07 ` Christian Couder
2022-07-28 19:32 ` Junio C Hamano
2022-07-30 7:50 ` Siddharth Asthana
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqo7xnv17x.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=avarab@gmail.com \
--cc=christian.couder@gmail.com \
--cc=congdanhqx@gmail.com \
--cc=git@vger.kernel.org \
--cc=johncai86@gmail.com \
--cc=phillip.wood123@gmail.com \
--cc=siddharthasthana31@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.