Re: [PATCHv4 8/8] clone: recursive and reference option triggers submodule alternates
- From
Stefan Beller <sbeller@google.com>
- Date
- Aug 17, 2016, 20:53 UTC
- Message-ID
- <CAGZ79kZChE=y9=DiQw9rw70S1ToEJK3mqFo1JLHRueVvst4VoQ@mail.gmail.com>
- In-Reply-To
- <xmqqr39n88pg.fsf@gitster.mtv.corp.google.com>
On Wed, Aug 17, 2016 at 1:02 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 19 quoted lines
> Stefan Beller <sbeller@google.com> writes:
>
>> +static void prepare_possible_alternates(const char *sm_name,
>> + struct string_list *reference)
>> +{
>> + char *sm_alternate = NULL, *error_strategy = NULL;
>> + struct submodule_alternate_setup sas = SUBMODULE_ALTERNATE_SETUP_INIT;
>> +
>> + git_config_get_string("submodule.alternateLocation", &sm_alternate);
>> + if (!sm_alternate)
>> + return;
>> +
>> + git_config_get_string("submodule.alternateErrorStrategy", &error_strategy);
>
> I have to admit that I need to follow the codepath in config.c every
> time to check, but I _think_ git_config_get_string() gives you your
> own copy of the value. As this function does not give ownership of
> sm_alternate or error_strategy to something else, they are leaked
> every time this function is called, I think.There are quite a few more occurrences of git_config_get_string in the submodule helper, I'll also look at those.
Thanks, Stefan