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

[PATCH v3 2/3] diff-files: fix incorrect usage of an empty tree

From
Johannes Schindelin via GitGitGadget <gitgitgadget@gmail.com>
Date
Jun 24, 2020, 14:47 UTC
Message-ID
<a9e06427ec4661b105f57ccf4ce5e842ba501a99.1593010066.git.gitgitgadget@gmail.com>
In-Reply-To
<pull.654.v3.git.1593010066.gitgitgadget@gmail.com>
From: Johannes Schindelin <johannes.schindelin@gmx.de>

In c26022ea8f5 (diff: convert diff_addremove to struct object_id, 2017-05-30), the OID to use for intent-to-add files was inadvertently changed from the empty blob to the empty tree.

Let's revert that.

To be able to do that, we just taught the regression test introduced in feea6946a5b (diff-files: treat "i-t-a" files as "not-in-index", 2020-06-20) to _not_ expect the raw diff to contain the hash of the empty tree (we also had to fix the code to actually produce the expected output, but for the sake of this here patch, that's beside the point).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 diff-lib.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/diff-lib.c b/diff-lib.c
index ea23169afa..7aafd7cc37 100644
--- a/diff-lib.c
+++ b/diff-lib.c
@@ -234,7 +234,7 @@ int run_diff_files(struct rev_info *revs, unsigned int option)
 			} else if (revs->diffopt.ita_invisible_in_index &&
 				   ce_intent_to_add(ce)) {
 				diff_addremove(&revs->diffopt, '+', ce->ce_mode,
-					       the_hash_algo->empty_tree, 0,
+					       the_hash_algo->empty_blob, 0,
 					       ce->name, 0);
 				continue;
 			}
-- 
gitgitgadget
Previous: Johannes Schindelin via GitGitGadgetNext: Johannes Schindelin via GitGitGadget
Message 21 of 37 in “Fix difftool problem with intent-to-add files”
  1. 0/3 Fix difftool problem with intent-to-add filesJohannes Schindelin via GitGitGadget, Jun 11, 2020
  2. 2/3 diff-files --raw: handle intent-to-add files correctlyJohannes Schindelin via GitGitGadget, Jun 11, 2020
  3. 1/3 diff-files: fix incorrect usage of an empty treeJohannes Schindelin via GitGitGadget, Jun 11, 2020
  4. 3/3 difftool -d: ensure that intent-to-add files are handled correctlyJohannes Schindelin via GitGitGadget, Jun 11, 2020
  5. 0/3 Fix difftool problem with intent-to-add filesJohannes Schindelin via GitGitGadget, Jun 23, 2020
  6. 2/3 diff-files: fix incorrect usage of an empty treeJohannes Schindelin via GitGitGadget, Jun 23, 2020
  7. Junio C HamanoJun 24, 2020
  8. 3/3 difftool -d: ensure that intent-to-add files are handled correctlyJohannes Schindelin via GitGitGadget, Jun 23, 2020
  9. 1/3 diff-files --raw: handle intent-to-add files correctlyJohannes Schindelin via GitGitGadget, Jun 23, 2020
  10. Junio C HamanoJun 24, 2020
  11. Johannes SchindelinJun 24, 2020
  12. Junio C HamanoJun 24, 2020
  13. Junio C HamanoJun 24, 2020
  14. Johannes SchindelinJun 25, 2020
  15. Srinidhi KaushikJun 24, 2020
  16. Johannes SchindelinJun 24, 2020
  17. Junio C HamanoJun 24, 2020
  18. 0/3 Fix difftool problem with intent-to-add filesJohannes Schindelin via GitGitGadget, Jun 24, 2020
  19. 1/3 diff-files --raw: handle intent-to-add files correctlyJohannes Schindelin via GitGitGadget, Jun 24, 2020
  20. 3/3 difftool -d: ensure that intent-to-add files are handled correctlyJohannes Schindelin via GitGitGadget, Jun 24, 2020
  21. 2/3 diff-files: fix incorrect usage of an empty treeJohannes Schindelin via GitGitGadget, Jun 24, 2020
  22. 0/2 Fix difftool problem with intent-to-add filesJohannes Schindelin via GitGitGadget, Jun 25, 2020
  23. 1/2 diff-files --raw: show correct post-image of intent-to-add filesJohannes Schindelin via GitGitGadget, Jun 25, 2020
  24. Junio C HamanoJun 25, 2020
  25. Johannes SchindelinJul 1, 2020
  26. Junio C HamanoJul 1, 2020
  27. Junio C HamanoJun 25, 2020
  28. Johannes SchindelinJul 1, 2020
  29. Srinidhi KaushikJun 26, 2020
  30. 2/2 difftool -d: ensure that intent-to-add files are handled correctlyJohannes Schindelin via GitGitGadget, Jun 25, 2020
  31. Junio C HamanoJun 25, 2020
  32. Johannes SchindelinJul 1, 2020
  33. Junio C HamanoJul 1, 2020
  34. Johannes SchindelinJul 1, 2020
  35. 0/2 Fix difftool problem with intent-to-add filesJohannes Schindelin via GitGitGadget, Jul 1, 2020
  36. 1/2 diff-files --raw: show correct post-image of intent-to-add filesJohannes Schindelin via GitGitGadget, Jul 1, 2020
  37. 2/2 difftool -d: ensure that intent-to-add files are handled correctlyJohannes Schindelin via GitGitGadget, Jul 1, 2020

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.