Re: [PATCH v4 1/5] notes.c: cleanup 'strbuf_grow' call in 'append_edit'
- From
Teng Long <dyroneteng@gmail.com>
- Date
- Jan 28, 2023, 11:22 UTC
- Message-ID
- <20230128112238.56553-1-tenglong.tl@alibaba-inc.com>
- In-Reply-To
- <CAPig+cQKJxJCwk1GWtQ=LNNA=z9tQxYUwn9CMcXE4R9g8eKU7A@mail.gmail.com>
Eric Sunshine <sunshine@sunshineco.com> writes:
Show 25 quoted lines
> On Wed, Jan 11, 2023 at 9:48 PM Teng Long <dyroneteng@gmail.com> wrote: > > Let's cleanup the unnecessary 'strbuf_grow' call in 'append_edit'. This > > "strbuf_grow(&d.buf, size + 1);" is prepared for insert a blank line if > > needed, but actually when inserting, "strbuf_insertstr(&d.buf, 0, > > "\n");" will do the "grow" for us. > > > > Signed-off-by: Teng Long <dyroneteng@gmail.com> > > --- > > diff --git a/builtin/notes.c b/builtin/notes.c > > @@ -618,7 +618,6 @@ static int append_edit(int argc, const char **argv, const char *prefix) > > char *prev_buf = read_object_file(note, &type, &size); > > > > - strbuf_grow(&d.buf, size + 1); > > if (d.buf.len && prev_buf && size) > > strbuf_insertstr(&d.buf, 0, "\n"); > > Indeed, it's not clear why that was there in the first place. Digging > through history doesn't shed any light on it. It was introduced by > 2347fae50b (builtin-notes: Add "append" subcommand for appending to > note objects, 2010-02-13)[1], but there's no explanation as to why it > was coded that way. Best guess may be that the author originally > inserted "\n" manually by direct manipulation of the strbuf rather > than employing a strbuf function, but then switched to strbuf_insert() > before submitting the series and forgot to remove the now-unnecessary > strbuf_grow().
Yes, I have the same opinion with you, maybe original idea to savesome array creation overhead? I'm not sure, but I think the deletion here is OK.
Thanks.