# [BUG] git config: cygwin git version 1.6.1.2 does not deletes empty sections

4 messages from 2009-05-06 to 2009-05-06. Participants: Constantine Plotnikov, Erik Faye-Lund, Michał Kiedrowicz.
Thread: https://gitlist.dev/t/19200

## Constantine Plotnikov, 2009-05-06 15:50

Subject: [BUG] git config: cygwin git version 1.6.1.2 does not deletes empty sections
Message-ID: <85647ef50905060850t2e6c2051jfa6d3596b680cc74@mail.gmail.com>
URL: https://gitlist.dev/e/85647ef50905060850t2e6c2051jfa6d3596b680cc74%40mail.gmail.com

```
I have encountered a bug related to git config in cygwin git version 1.6.1.2

The git config --unset might leave an empty section when the last
property is deleted. But consequent "git config key value" does not
uses this empty section. So the following script leaves a sequence of
empty sections "[a]". Looks like a disk space leak to me.

git config a.b a
git config --unset a.b
git config a.b a
git config --unset a.b
git config a.b a
git config --unset a.b
git config a.b a
git config --unset a.b

The resulting .git/config file:

[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
	ignorecase = true
[a]
[a]
[a]
[a]

Was this bug fixed in later versions?

Constantine

```

## Constantine Plotnikov, 2009-05-06 16:04

Subject: Re: [BUG] git config: cygwin git version 1.6.1.2 does not deletes empty sections
Message-ID: <85647ef50905060904w49879c57r4a5773a487f09c85@mail.gmail.com>
URL: https://gitlist.dev/e/85647ef50905060904w49879c57r4a5773a487f09c85%40mail.gmail.com
In-Reply-To: <85647ef50905060850t2e6c2051jfa6d3596b680cc74@mail.gmail.com>

```
The bug is also confirmed on MSYS git version 1.6.2.2.1669.g7eaf8.

Constantine

On Wed, May 6, 2009 at 7:50 PM, Constantine Plotnikov
<constantine.plotnikov@gmail.com> wrote:
> I have encountered a bug related to git config in cygwin git version 1.6.1.2
>
> The git config --unset might leave an empty section when the last
> property is deleted. But consequent "git config key value" does not
> uses this empty section. So the following script leaves a sequence of
> empty sections "[a]". Looks like a disk space leak to me.
>
> git config a.b a
> git config --unset a.b
> git config a.b a
> git config --unset a.b
> git config a.b a
> git config --unset a.b
> git config a.b a
> git config --unset a.b
>
> The resulting .git/config file:
>
> [core]
>        repositoryformatversion = 0
>        filemode = true
>        bare = false
>        logallrefupdates = true
>        ignorecase = true
> [a]
> [a]
> [a]
> [a]
>
> Was this bug fixed in later versions?
>
> Constantine
>

```

## Erik Faye-Lund, 2009-05-06 18:08

Subject: Re: [BUG] git config: cygwin git version 1.6.1.2 does not deletes empty sections
Message-ID: <40aa078e0905061108o21830f07xfb9d5c185c93fda6@mail.gmail.com>
URL: https://gitlist.dev/e/40aa078e0905061108o21830f07xfb9d5c185c93fda6%40mail.gmail.com
In-Reply-To: <85647ef50905060904w49879c57r4a5773a487f09c85@mail.gmail.com>

```
On Wed, May 6, 2009 at 6:04 PM, Constantine Plotnikov
<constantine.plotnikov@gmail.com> wrote:
> The bug is also confirmed on MSYS git version 1.6.2.2.1669.g7eaf8.

The same issue is present in git 1.6.2.1 on Linux. Not that I'm too
sure it's really a bug, though ;)

-- 
Erik "kusma" Faye-Lund
kusmabite@gmail.com
(+47) 986 59 656

```

## Michał Kiedrowicz, 2009-05-06 20:43

Subject: Re: [BUG] git config: cygwin git version 1.6.1.2 does not deletes empty sections
Message-ID: <20090506224327.23c69a06@gmail.com>
URL: https://gitlist.dev/e/20090506224327.23c69a06%40gmail.com
In-Reply-To: <40aa078e0905061108o21830f07xfb9d5c185c93fda6@mail.gmail.com>

```
Erik Faye-Lund <kusmabite@googlemail.com> wrote:

> On Wed, May 6, 2009 at 6:04 PM, Constantine Plotnikov
> <constantine.plotnikov@gmail.com> wrote:
> > The bug is also confirmed on MSYS git version 1.6.2.2.1669.g7eaf8.
> 
> The same issue is present in git 1.6.2.1 on Linux. Not that I'm too
> sure it's really a bug, though ;)
> 

Happens also in master (v1.6.3-rc4-29-g8146f19). IMO this is because
git_parse_file() reports only *variables*, not *sections* and
store_aux() doesn't find empty section.

--
Michał Kiedrowicz

```
