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

Re: [PATCH 01/17] cache: update object ID functions for the_hash_algo

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Jul 9, 2018, 04:05 UTC
Message-ID
<CAPig+cRznUKdriPhHMt5ocb_pXbByY5a40A8ZOiqF=_0hm7avw@mail.gmail.com>
In-Reply-To
<CA+P7+xq900ikNR3uBEo28rjrTh5iYJm-R8jcAjhq-7G2jh3iVA@mail.gmail.com>
On Sun, Jul 8, 2018 at 10:38 PM Jacob Keller <jacob.keller@gmail.com> wrote:
Show 9 quoted lines
> On Sun, Jul 8, 2018 at 4:39 PM brian m. carlson
> <sandals@crustytoothpaste.net> wrote:
> >  static inline int oidcmp(const struct object_id *oid1, const struct object_id *oid2)
> >  {
> > -       return hashcmp(oid1->hash, oid2->hash);
> > +       return memcmp(oid1->hash, oid2->hash, the_hash_algo->rawsz);
> >  }
>
> Just curious, what's the reasoning for not using the hashcmp anymore?

hashcmp() is specific to SHA-1 (for instance, it hardocdes GIT_SHA1_RAWSZ). oidcmp() is meant as the hash-agnostic replacement for hashcmp(), so it doesn't make sense to continue implementing oidcmp() in terms of hashcmp() (the latter of which will eventually be retired, presumably).

Previous: Jacob KellerNext: Jacob Keller
Message 4 of 37 in “object_id part 14”
  1. 00/17 object_id part 14brian m. carlson, Jul 8, 2018
  2. 01/17 cache: update object ID functions for the_hash_algobrian m. carlson, Jul 8, 2018
  3. Jacob KellerJul 9, 2018
  4. Eric SunshineJul 9, 2018
  5. Jacob KellerJul 9, 2018
  6. brian m. carlsonJul 9, 2018
  7. 04/17 commit: express tree entry constants in terms of the_hash_algobrian m. carlson, Jul 8, 2018
  8. 06/17 sha1-name: use the_hash_algo when parsing object namesbrian m. carlson, Jul 8, 2018
  9. 05/17 strbuf: allocate space with GIT_MAX_HEXSZbrian m. carlson, Jul 8, 2018
  10. 10/17 builtin/update-index: simplify parsing of cacheinfobrian m. carlson, Jul 8, 2018
  11. 11/17 builtin/fmt-merge-msg: make hash independentbrian m. carlson, Jul 8, 2018
  12. 14/17 diff: switch GIT_SHA1_HEXSZ to use the_hash_algobrian m. carlson, Jul 8, 2018
  13. 13/17 builtin/merge-recursive: make hash independentbrian m. carlson, Jul 8, 2018
  14. 17/17 pretty: switch hard-coded constants to the_hash_algobrian m. carlson, Jul 8, 2018
  15. 15/17 log-tree: switch GIT_SHA1_HEXSZ to the_hash_algo->hexszbrian m. carlson, Jul 8, 2018
  16. 16/17 sha1-file: convert constants to uses of the_hash_algobrian m. carlson, Jul 8, 2018
  17. 12/17 builtin/merge: switch to use the_hash_algobrian m. carlson, Jul 8, 2018
  18. 09/17 builtin/update-index: convert to using the_hash_algobrian m. carlson, Jul 8, 2018
  19. 07/17 commit: increase commit message buffer sizebrian m. carlson, Jul 8, 2018
  20. Derrick StoleeJul 9, 2018
  21. Stefan BellerJul 9, 2018
  22. Brandon WilliamsJul 9, 2018
  23. Junio C HamanoJul 9, 2018
  24. Brandon WilliamsJul 9, 2018
  25. Junio C HamanoJul 9, 2018
  26. brian m. carlsonJul 9, 2018
  27. Junio C HamanoJul 10, 2018
  28. Ben PeartJul 10, 2018
  29. brian m. carlsonJul 11, 2018
  30. Junio C HamanoJul 11, 2018
  31. 08/17 refs/files-backend: use the_hash_algo for writing refsbrian m. carlson, Jul 8, 2018
  32. 02/17 tree-walk: replace hard-coded constants with the_hash_algobrian m. carlson, Jul 8, 2018
  33. 03/17 hex: switch to using the_hash_algobrian m. carlson, Jul 8, 2018
  34. Jacob KellerJul 9, 2018
  35. Derrick StoleeJul 9, 2018
  36. Michael HaggertyJul 14, 2018
  37. Junio C HamanoJul 16, 2018

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.