Show 28 quoted lines
> When fetch is invoked with --all, we need to pass the tag-following
> preference to each individual fetch; without this, we will always
> auto-follow tags, preventing us from fetching the remote tags into a
> remote-specific namespace, for example.
>
> Reported-by: Oswald Buddenhagen <ossi@kde.org>
> Signed-off-by: Dan Johnson <ComputerDruid@gmail.com>
> ---
> On Sat, Sep 1, 2012 at 7:22 AM, Jeff King <peff@peff.net> wrote:
>>Hmm. We allocate argv in fetch_multiple like this:
>>
>> const char *argv[12] = { "fetch", "--append" };
>>
>>and then add a bunch of options to it, along with the name of the
>>remote. By my count, the current code can hit exactly 12 (including the
>>terminating NULL) if all options are set. Your patch would make it
>>possible to overflow. Of course, I may be miscounting since it is
>>extremely error-prone to figure out the right number by tracing each
>>possible conditional.
>>
>>Maybe we should switch it to a dynamic argv_array? Like this:
>>
>> [1/2]: argv-array: add pop function
>> [2/2]: fetch: use argv_array instead of hand-building arrays
>
> This version is re-rolled to be on top of jk/argv-array, avoiding the issue of
> the fixed-size array entirely. If needed, we could of course use the old
> version of this patch and bump the number, but I figure this is preferable.