# [PATCH] repository: fix a sparse 'using integer as NULL pointer' warning

4 messages from 2017-11-28 to 2017-11-29. Participants: Ramsay Jones, Junio C Hamano, brian m. carlson.
Thread: https://gitlist.dev/t/47330

## Ramsay Jones, 2017-11-28 03:01

Subject: [PATCH] repository: fix a sparse 'using integer as NULL pointer' warning
Message-ID: <69fdc850-da71-6df3-5299-eb67ef5d74df@ramsayjones.plus.com>
URL: https://gitlist.dev/e/69fdc850-da71-6df3-5299-eb67ef5d74df%40ramsayjones.plus.com

```

Commit 78a6766802 ("Integrate hash algorithm support with repo setup",
2017-11-12) added a 'const struct git_hash_algo *hash_algo' field to the
repository structure, without modifying the initializer of the 'the_repo'
variable. This does not actually introduce a bug, since the '0' initializer
for the 'ignore_env:1' bit-field is interpreted as a NULL pointer (hence
the warning), and the final field (now with no initializer) receives a
default '0'.

Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com>
---

Hi Junio,

I don't recall Brian doing a re-roll of the 'bc/hash-algo' branch[1], but
now that it has been merged into the 'next' branch, sparse is barking on
that branch too. This patch (slightly different to the last one) applies
on top of 'next'.

ATB,
Ramsay Jones

[1] https://public-inbox.org/git/%3C91150cfc-3271-16b0-33d3-9a4e149dc9fe@ramsayjones.plus.com%3E/

 repository.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/repository.c b/repository.c
index c6ceb9f9e..998413b8b 100644
--- a/repository.c
+++ b/repository.c
@@ -5,7 +5,7 @@
 
 /* The main repository */
 static struct repository the_repo = {
-	NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &the_index, 0, 0
+	NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &the_index, NULL, 0, 0
 };
 struct repository *the_repository = &the_repo;
 
-- 
2.15.0

```

## Junio C Hamano, 2017-11-28 04:07

Subject: Re: [PATCH] repository: fix a sparse 'using integer as NULL pointer' warning
Message-ID: <xmqqtvxf6o7t.fsf@gitster.mtv.corp.google.com>
URL: https://gitlist.dev/e/xmqqtvxf6o7t.fsf%40gitster.mtv.corp.google.com
In-Reply-To: <69fdc850-da71-6df3-5299-eb67ef5d74df@ramsayjones.plus.com>

```
Ramsay Jones <ramsay@ramsayjones.plus.com> writes:

> Hi Junio,
>
> I don't recall Brian doing a re-roll of the 'bc/hash-algo' branch[1], but
> now that it has been merged into the 'next' branch, sparse is barking on
> that branch too. This patch (slightly different to the last one) applies
> on top of 'next'.

Thanks.  Will queue on that topic.


```

## brian m. carlson, 2017-11-29 01:35

Subject: Re: [PATCH] repository: fix a sparse 'using integer as NULL pointer' warning
Message-ID: <20171129013518.GB598034@genre.crustytoothpaste.net>
URL: https://gitlist.dev/e/20171129013518.GB598034%40genre.crustytoothpaste.net
In-Reply-To: <69fdc850-da71-6df3-5299-eb67ef5d74df@ramsayjones.plus.com>

```
On Tue, Nov 28, 2017 at 03:01:19AM +0000, Ramsay Jones wrote:
> 
> Commit 78a6766802 ("Integrate hash algorithm support with repo setup",
> 2017-11-12) added a 'const struct git_hash_algo *hash_algo' field to the
> repository structure, without modifying the initializer of the 'the_repo'
> variable. This does not actually introduce a bug, since the '0' initializer
> for the 'ignore_env:1' bit-field is interpreted as a NULL pointer (hence
> the warning), and the final field (now with no initializer) receives a
> default '0'.
> 
> Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com>
> ---
> 
> Hi Junio,
> 
> I don't recall Brian doing a re-roll of the 'bc/hash-algo' branch[1], but
> now that it has been merged into the 'next' branch, sparse is barking on
> that branch too. This patch (slightly different to the last one) applies
> on top of 'next'.

Thanks for the patch; it's obviously correct.  I'll get sparse set up
for future patch series.
-- 
brian m. carlson / brian with sandals: Houston, Texas, US
https://www.crustytoothpaste.net/~bmc | My opinion only
OpenPGP: https://keybase.io/bk2204

```

## Ramsay Jones, 2017-11-29 17:58

Subject: Re: [PATCH] repository: fix a sparse 'using integer as NULL pointer' warning
Message-ID: <423b4a07-dac3-20f2-ad60-d87fa08968f9@ramsayjones.plus.com>
URL: https://gitlist.dev/e/423b4a07-dac3-20f2-ad60-d87fa08968f9%40ramsayjones.plus.com
In-Reply-To: <20171129013518.GB598034@genre.crustytoothpaste.net>

```


On 29/11/17 01:35, brian m. carlson wrote:
> On Tue, Nov 28, 2017 at 03:01:19AM +0000, Ramsay Jones wrote:
>>
>> Commit 78a6766802 ("Integrate hash algorithm support with repo setup",
>> 2017-11-12) added a 'const struct git_hash_algo *hash_algo' field to the
>> repository structure, without modifying the initializer of the 'the_repo'
>> variable. This does not actually introduce a bug, since the '0' initializer
>> for the 'ignore_env:1' bit-field is interpreted as a NULL pointer (hence
>> the warning), and the final field (now with no initializer) receives a
>> default '0'.
>>
>> Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com>
>> ---
>>
>> Hi Junio,
>>
>> I don't recall Brian doing a re-roll of the 'bc/hash-algo' branch[1], but
>> now that it has been merged into the 'next' branch, sparse is barking on
>> that branch too. This patch (slightly different to the last one) applies
>> on top of 'next'.
> 
> Thanks for the patch; it's obviously correct.  I'll get sparse set up
> for future patch series.

Heh, at this point I usually remark that you would need to build
sparse from source, since all the packaged versions are so old
as to be virtually useless (to run over git).

That may still be the case, depending on your distro, since there
was a new release a couple of months ago. However, you know how
long it takes to get into some distros! ;-)

[I _think_ it may be in Debian Unstable]

Oh, the release (v0.5.1) was tagged on 17 Aug 2017.
(I'm currently running v0.5.1-30-gf1e4ba1, built from source).

ATB,
Ramsay Jones


```
