git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 4/4] commit.c: Fix type missmatch warings from msvc

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 26, 2024, 21:38 UTC
Message-ID
<xmqqttaqw2eb.fsf@gitster.g>
In-Reply-To
<20241223110407.3308-5-soekkle@freenet.de>
Sören Krecker <soekkle@freenet.de> writes:
Show 23 quoted lines
> Fix compiler warings from msvc in date.c for value truncation from 64
> bit to 32 bit integers.
>
> Also switch from int to size_t for all variables with result of strlen()
> which cannot become negative.
>
> Signed-off-by: Sören Krecker <soekkle@freenet.de>
> ---
>  commit.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/commit.c b/commit.c
> index 35ab9bead5..3d363260f3 100644
> --- a/commit.c
> +++ b/commit.c
> @@ -466,8 +466,8 @@ int parse_commit_buffer(struct repository *r, struct commit *item, const void *b
>  	struct object_id parent;
>  	struct commit_list **pptr;
>  	struct commit_graft *graft;
> -	const int tree_entry_len = the_hash_algo->hexsz + 5;
> -	const int parent_entry_len = the_hash_algo->hexsz + 7;
> +	const size_t tree_entry_len = the_hash_algo->hexsz + 5;
> +	const size_t parent_entry_len = the_hash_algo->hexsz + 7;

We saw another change around hexsz in this series, but I seriously doubt that it is sensible to define .hexsz member of git_hash_algo as type size_t. The whole _point_ of hash function is so that it can be represented by a handful of bytes, so insisting size_t and forcing us to suffer code churning like we see here is simply crazy.

Would it work equally well, if not better, if you instead fixed the type of the .hexsz member (and its friends) to something more reasonable, like "int"?

Previous: Sören KreckerNext: Sören Krecker
Message 3 of 17 in “Fixes typemissmatch warinigs from msvc”
  1. 0/4 Fixes typemissmatch warinigs from msvcSören Krecker, Dec 23, 2024
  2. 4/4 commit.c: Fix type missmatch warings from msvcSören Krecker, Dec 23, 2024
  3. Junio C HamanoDec 26, 2024
  4. 1/4 add-patch: Fix type missmatch rom msvcSören Krecker, Dec 23, 2024
  5. Junio C HamanoDec 26, 2024
  6. Patrick SteinhardtDec 27, 2024
  7. Phillip WoodDec 27, 2024
  8. Junio C HamanoDec 27, 2024
  9. Sören KreckerDec 27, 2024
  10. Junio C HamanoDec 27, 2024
  11. Phillip WoodDec 28, 2024
  12. 2/4 date.c: Fix type missmatch warings from msvcSören Krecker, Dec 23, 2024
  13. Junio C HamanoDec 26, 2024
  14. 3/4 apply.c : Fix type missmatch warings from msvcSören Krecker, Dec 23, 2024
  15. Junio C HamanoDec 23, 2024
  16. Junio C HamanoDec 23, 2024
  17. Sören KreckerDec 26, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.