Re: [PATCH v2 1/3] refs: expose 'for_each_fullref_in_prefixes'
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jan 23, 2021, 02:59 UTC
- Message-ID
- <xmqqczxw5pf1.fsf@gitster.c.googlers.com>
- In-Reply-To
- <bda314fe7ae1629ba068a0c4ada9b6adc20576eb.1611158549.git.me@ttaylorr.com>
Taylor Blau <me@ttaylorr.com> writes:
Show 20 quoted lines
> This function was used in the ref-filter.c code to find the longest > common prefix of among a set of refspecs, and then to iterate all of the > references that descend from that prefix. > > A future patch will want to use that same code from ls-refs.c, so > prepare by exposing and moving it to refs.c. Since there is nothing > specific to the ref-filter code here (other than that it was previously > the only caller of this function), this really belongs in the more > generic refs.h header. > > The code moved in this patch is identical before and after, with the one > exception of renaming some arguments to be consistent with other > functions exposed in refs.h. > > Signed-off-by: Taylor Blau <me@ttaylorr.com> > --- > ref-filter.c | 74 ++------------------------------------------ > refs.c | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++ > refs.h | 9 ++++++ > 3 files changed, 98 insertions(+), 72 deletions(-)
It is amusing that even to a change that is supposedly "expose existing functionality by moving code around" and nothing else, we can introduce new glitches.
Show 7 quoted lines
> diff --git a/refs.c b/refs.c
> index 13dc2c3291..0b5a68588f 100644
> --- a/refs.c
> +++ b/refs.c
> ...
> + for_each_string_list_item(prefix, &prefixes) {
> + strbuf_addf(&buf, "%s", prefix->string);strbuf_addstr(&buf, prefix->string);
Caught by
https://github.com/git/git/runs/1752536671?check_suite_focus=true#step:4:63
I'll apply the fix suggested by Coccinelle on my end, so there is no need to send an updated version just for this one.
Thanks.