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

Re: [PATCH 1/2] hex: drop sha1_to_hex_r()

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Nov 11, 2019, 18:30 UTC
Message-ID
<nycvar.QRO.7.76.6.1911111929550.46@tvgsbejvaqbjf.bet>
In-Reply-To
<20191111090411.GA12545@sigill.intra.peff.net>
Hi Peff,
On Mon, 11 Nov 2019, Jeff King wrote:
Show 16 quoted lines
> There are no callers left; everybody uses oid_to_hex_r() or
> hash_to_hex_algop_r(). This used to actually be the underlying
> implementation for oid_to_hex_r(), but that's no longer the case since
> 47edb64997 (hex: introduce functions to print arbitrary hashes,
> 2018-11-14).
>
> Let's get rid of it to de-clutter and to make sure nobody uses it.
> Likewise we can drop the coccinelle rules that mention it, since the
> compiler will make it quite clear that the code does not work.
>
> Signed-off-by: Jeff King <peff@peff.net>
> ---
>  cache.h                            |  1 -
>  contrib/coccinelle/object_id.cocci | 17 -----------------
>  hex.c                              |  5 -----
>  3 files changed, 23 deletions(-)
I really like that diffstat.

Thanks, Dscho

Show 61 quoted lines
>
> diff --git a/cache.h b/cache.h
> index 04cabaac11..6a4eb221b3 100644
> --- a/cache.h
> +++ b/cache.h
> @@ -1462,7 +1462,6 @@ int hex_to_bytes(unsigned char *binary, const char *hex, size_t len);
>   *   printf("%s -> %s", sha1_to_hex(one), sha1_to_hex(two));
>   */
>  char *hash_to_hex_algop_r(char *buffer, const unsigned char *hash, const struct git_hash_algo *);
> -char *sha1_to_hex_r(char *out, const unsigned char *sha1);
>  char *oid_to_hex_r(char *out, const struct object_id *oid);
>  char *hash_to_hex_algop(const unsigned char *hash, const struct git_hash_algo *);	/* static buffer result! */
>  char *sha1_to_hex(const unsigned char *sha1);						/* same static buffer */
> diff --git a/contrib/coccinelle/object_id.cocci b/contrib/coccinelle/object_id.cocci
> index 3e536a9834..6c0d21d8e2 100644
> --- a/contrib/coccinelle/object_id.cocci
> +++ b/contrib/coccinelle/object_id.cocci
> @@ -25,23 +25,6 @@ struct object_id *OIDPTR;
>  + oid_to_hex(OIDPTR)
>    ...>}
>
> -@@
> -expression E;
> -struct object_id OID;
> -@@
> -- sha1_to_hex_r(E, OID.hash)
> -+ oid_to_hex_r(E, &OID)
> -
> -@@
> -identifier f != oid_to_hex_r;
> -expression E;
> -struct object_id *OIDPTR;
> -@@
> -   f(...) {<...
> -- sha1_to_hex_r(E, OIDPTR->hash)
> -+ oid_to_hex_r(E, OIDPTR)
> -  ...>}
> -
>  @@
>  struct object_id OID;
>  @@
> diff --git a/hex.c b/hex.c
> index 7850a8879d..8c3f06a192 100644
> --- a/hex.c
> +++ b/hex.c
> @@ -90,11 +90,6 @@ char *hash_to_hex_algop_r(char *buffer, const unsigned char *hash,
>  	return buffer;
>  }
>
> -char *sha1_to_hex_r(char *buffer, const unsigned char *sha1)
> -{
> -	return hash_to_hex_algop_r(buffer, sha1, &hash_algos[GIT_HASH_SHA1]);
> -}
> -
>  char *oid_to_hex_r(char *buffer, const struct object_id *oid)
>  {
>  	return hash_to_hex_algop_r(buffer, oid->hash, the_hash_algo);
> --
> 2.24.0.739.gb5632e4929
>
>
Previous: Jeff KingNext: Jeff King
Message 3 of 17 in “getting rid of sha1_to_hex()”
  1. 0/2 getting rid of sha1_to_hex()Jeff King, Nov 11, 2019
  2. 1/2 hex: drop sha1_to_hex_r()Jeff King, Nov 11, 2019
  3. Johannes SchindelinNov 11, 2019
  4. 2/2 hex: drop sha1_to_hex()Jeff King, Nov 11, 2019
  5. SZEDER GáborNov 11, 2019
  6. Jeff KingNov 11, 2019
  7. Junio C HamanoNov 12, 2019
  8. Jeff KingNov 12, 2019
  9. SZEDER GáborNov 12, 2019
  10. Jeff KingNov 12, 2019
  11. Junio C HamanoNov 12, 2019
  12. Jeff KingNov 12, 2019
  13. Junio C HamanoNov 13, 2019
  14. Jeff KingNov 13, 2019
  15. Junio C HamanoNov 11, 2019
  16. Jeff KingNov 11, 2019
  17. brian m. carlsonNov 11, 2019

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.