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

[PATCH 1/5] define empty tree sha1 as a macro

From
Jeff King <peff@peff.net>
Date
Nov 12, 2008, 08:17 UTC
Message-ID
<20081112081752.GA3751@coredump.intra.peff.net>
In-Reply-To
<20081112081609.GA3720@coredump.intra.peff.net>

This can potentially be used in a few places, so let's make it available to all parts of the code.

Signed-off-by: Jeff King <peff@peff.net>
---
I use the _HEX version in further patches, but since it is such a magic
number, I thought it made sense to keep all definitions in the same
place.
 cache.h     |    6 ++++++
 sha1_file.c |    4 +---
 2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/cache.h b/cache.h
index bcc57ba..46eb2af 100644
--- a/cache.h
+++ b/cache.h
@@ -528,6 +528,12 @@ static inline void hashclr(unsigned char *hash)
 }
 extern int is_empty_blob_sha1(const unsigned char *sha1);
 
+#define EMPTY_TREE_SHA1_HEX \
+	"4b825dc642cb6eb9a060e54bf8d69288fbee4904"
+#define EMPTY_TREE_SHA1_BIN \
+	 "\x4b\x82\x5d\xc6\x42\xcb\x6e\xb9\xa0\x60" \
+	 "\xe5\x4b\xf8\xd6\x92\x88\xfb\xee\x49\x04"
+
 int git_mkstemp(char *path, size_t n, const char *template);
 
 /*
diff --git a/sha1_file.c b/sha1_file.c
index 654d039..037e439 100644
--- a/sha1_file.c
+++ b/sha1_file.c
@@ -2056,9 +2056,7 @@ static struct cached_object {
 static int cached_object_nr, cached_object_alloc;
 
 static struct cached_object empty_tree = {
-	/* empty tree sha1: 4b825dc642cb6eb9a060e54bf8d69288fbee4904 */
-	"\x4b\x82\x5d\xc6\x42\xcb\x6e\xb9\xa0\x60"
-	"\xe5\x4b\xf8\xd6\x92\x88\xfb\xee\x49\x04",
+	EMPTY_TREE_SHA1_BIN,
 	OBJ_TREE,
 	"",
 	0
-- 
1.6.0.4.883.g4593ee.dirty
Previous: Jeff KingNext: Jeff King
Message 11 of 22 in “git commit -v does not removes the patch”
  1. Santi BéjarNov 10, 2008
  2. Jeff KingNov 10, 2008
  3. Santi BéjarNov 10, 2008
  4. Junio C HamanoNov 10, 2008
  5. Jeff KingNov 11, 2008
  6. Santi BéjarNov 11, 2008
  7. Jeff KingNov 11, 2008
  8. Santi BéjarNov 11, 2008
  9. Junio C HamanoNov 11, 2008
  10. Jeff KingNov 12, 2008
  11. 1/5 define empty tree sha1 as a macroJeff King, Nov 12, 2008
  12. 2/5 wt-status: refactor initial commit printingJeff King, Nov 12, 2008
  13. 3/5 status: show "-v" diff even for initial commitJeff King, Nov 12, 2008
  14. 4/5 commit: loosen pattern for matching "-v" diffJeff King, Nov 12, 2008
  15. 5/5 commit: only strip diff from message in verbose modeJeff King, Nov 12, 2008
  16. Jeff KingNov 12, 2008
  17. Junio C HamanoNov 13, 2008
  18. SZEDER GáborNov 20, 2008
  19. Jeff KingNov 20, 2008
  20. SZEDER GáborNov 22, 2008
  21. Jeff KingNov 22, 2008
  22. Junio C HamanoNov 22, 2008

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.