threads / patch / 47330

patchrepository: fix a sparse 'using integer as NULL pointer' warning

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

## tl;dr

4 messages between Nov 28, 2017 and Nov 29, 2017. Diffs are folded; open one to read it.

replies: 3people: 3as markdown or json

Ramsay Jones· Nov 28, 2017, 03:01 UTC · lore

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(-)
Show changes to repository.c +1 −1
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· Nov 28, 2017, 04:07 UTC · re: Ramsay Jones · lore

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

Ramsay Jones <ramsay@ramsayjones.plus.com> writes:
Show 6 quoted lines
> 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· Nov 29, 2017, 01:35 UTC · re: Ramsay Jones · lore

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

On Tue, Nov 28, 2017 at 03:01:19AM +0000, Ramsay Jones wrote:
Show 18 quoted lines
> 
> 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· Nov 29, 2017, 17:58 UTC · re: brian m. carlson · lore

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

On 29/11/17 01:35, brian m. carlson wrote:
Show 22 quoted lines
> 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

← back to recent threads