Re: [PATCH v3 0/6] git_config callers rewritten with the new config cache API
- From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
- Date
- Jul 21, 2014, 14:27 UTC
- Message-ID
- <vpqlhrm4wiu.fsf@anie.imag.fr>
- In-Reply-To
- <53CD1D0F.5000605@gmail.com>
Tanay Abhra <tanayabh@gmail.com> writes:
Show 31 quoted lines
> On 7/21/2014 7:15 PM, Matthieu Moy wrote:
>> Tanay Abhra <tanayabh@gmail.com> writes:
>>
>>> On 7/21/2014 6:21 PM, Matthieu Moy wrote:
>>>> 2) Add a by-address parameter to git_configset_get_value that allows the
>>>> user to get the file and line information. In your previous patch,
>>>> that would mean returning a pointer to the corresponding struct
>>>> key_source.
>>>
>>> Will this extra complexity be good for "git_configset_get_value"?
>>> Instead can we provide a function like die_config(char *key)
>>> which prints
>>> die("bad config file line %d in %s", linenr, filename);?
>>
>> Where would you call this function, and where would you take linenr and
>> filename?
>>
>
> Usage can be like this,
>
> if(!git_config_get_value(k, &v)) {
> if (!v) {
> config_error_nonbool(k);
> die_config(k);
> /* die_config calls git_config_get_value_multi for 'k',
> * gets the string list with the util pointer containing
> * the linenr and the file name, dies printing the message.
> */
> } else
> /* do work */
> }OK, so you query the cache twice (which is OK, it's cheap and happens just once before dying). That would work too.
-- Matthieu Moy http://www-verimag.imag.fr/~moy/