Re: [PATCH v3 14/35] connect: request remote refs using v2
- From
Jeff King <peff@peff.net>
- Date
- Feb 22, 2018, 18:26 UTC
- Message-ID
- <20180222182657.GE19035@sigill.intra.peff.net>
- In-Reply-To
- <20180222181922.GD185096@google.com>
On Thu, Feb 22, 2018 at 10:19:22AM -0800, Brandon Williams wrote:
Show 17 quoted lines
> On 02/21, Jonathan Tan wrote: > > On Tue, 6 Feb 2018 17:12:51 -0800 > > Brandon Williams <bmwill@google.com> wrote: > > > > > +extern struct ref **get_remote_refs(int fd_out, struct packet_reader *reader, > > > + struct ref **list, int for_push, > > > + const struct argv_array *ref_patterns); > > > > I haven't looked at the rest of this patch in detail, but the type of > > ref_patterns is probably better as struct string_list, since this is not > > a true argument array (e.g. with flags starting with --). Same comment > > for the next few patches that deal with ref patterns. > > Its just a list of strings which don't require having a util pointer > hanging around so actually using an argv_array would be more memory > efficient than a string_list. But either way I don't think it matters > much.
I agree that it shouldn't matter much here. But if the name argv_array is standing in the way of using it, I think we should consider giving it a more general name. I picked that not to evoke "this must be arguments" but "this is terminated by a single NULL".
In general I think it should be the preferred structure for string lists, just because it actually converts for free to the "other" common format (whereas you can never pass string_list.items to a function that doesn't know about string lists).
-Peff