Show 48 quoted lines
> Factor out the logic which creates section headers in the config file,
> e.g. the 'branch.foo' key will be turned into '[branch "foo"]'.
>
> This introduces no function changes, but is needed for a later change
> which adds support for copying branch sections in the config file.
>
> Signed-off-by: Sahil Dua <sahildua2305@gmail.com>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---
> config.c | 13 +++++++++++--
> 1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/config.c b/config.c
> index 146cb3452adab..d5bb69e925dac 100644
> --- a/config.c
> +++ b/config.c
> @@ -2169,10 +2169,10 @@ static int write_error(const char *filename)
> return 4;
> }
>
> -static int store_write_section(int fd, const char *key)
> +struct strbuf store_create_section(const char *key)
> {
> const char *dot;
> - int i, success;
> + int i;
> struct strbuf sb = STRBUF_INIT;
>
> dot = memchr(key, '.', store.baselen);
> @@ -2188,6 +2188,15 @@ static int store_write_section(int fd, const char *key)
> strbuf_addf(&sb, "[%.*s]\n", store.baselen, key);
> }
>
> + return sb;
> +}
> +
> +static int store_write_section(int fd, const char *key)
> +{
> + int success;
> +
> + struct strbuf sb = store_create_section(key);
> +
> success = write_in_full(fd, sb.buf, sb.len) == sb.len;
> strbuf_release(&sb);
>
>
> --
> https://github.com/git/git/pull/363