Re: [PATCHv6 1/4] Read (but not write) from $XDG_CONFIG_HOME/git/config file
- From
Erik Faye-Lund <kusmabite@gmail.com>
- Date
- Jun 10, 2012, 20:27 UTC
- Message-ID
- <CABPQNSZzErckfN8JjiSExUyVa+uGRJT0aut3gvtbGObnhQeowA@mail.gmail.com>
- In-Reply-To
- <20120610220239.Horde.UcGZQnwdC4BP1P1fPg1GEMA@webmail.minatec.grenoble-inp.fr>
On Sun, Jun 10, 2012 at 10:02 PM, <nguyenhu@minatec.inpg.fr> wrote:
Show 26 quoted lines
>
> Erik Faye-Lund <kusmabite@gmail.com> a écrit :
>
>>> char *mkpathdup(const char *fmt, ...)
>>> {
>>> struct strbuf sb = STRBUF_INIT;
>>> va_list args;
>>>
>>> va_start(args, fmt);
>>> strbuf_vaddf(&sb, fmt, args);
>>> va_end(args);
>>>
>>> return cleanup_path(strbuf_detach(&sb, NULL));
>>>
>>> }
>>
>>
>> The awkward thing about doing this, is that the memory allocated by
>> the strbuf cannot be reclaimed if you go with this. A pointer that has
>> been adjusted (like cleanup_path can do) cannot be successfully fed to
>> free.
>
>
> Do you mean that the previous version is preferable in keeping clean-up-path
> function ?
>No, that wasn't my intention. Since this is only used for a few config files, I don't think leaking the memory is a big deal. But it's probably worth putting a comment in the code about it, to warn potential future users.