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

[PATCH 1/5] diff_filespec: reorder dirty_submodule macro definitions

From
Jeff King <peff@peff.net>
Date
Jan 17, 2014, 01:19 UTC
Message-ID
<20140117011945.GA7249@sigill.intra.peff.net>
In-Reply-To
<20140117011844.GA6870@sigill.intra.peff.net>

diff_filespec has a 2-bit "dirty_submodule" field and defines two flags as macros. Originally these were right next to each other, but a new field was accidentally added in between in commit 4682d85. This patch puts the field and its flags back together.

Using an enum like:
  enum {
	  DIRTY_SUBMODULE_UNTRACKED = 1,
	  DIRTY_SUBMODULE_MODIFIED = 2
  } dirty_submodule;

would be more obvious, but it bloats the structure. Limiting the enum size like:

  } dirty_submodule : 2;
might work, but it is not portable.
Signed-off-by: Jeff King <peff@peff.net>
---
 diffcore.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/diffcore.h b/diffcore.h
index 1c16c85..f822f9e 100644
--- a/diffcore.h
+++ b/diffcore.h
@@ -43,9 +43,9 @@ struct diff_filespec {
 	unsigned should_free : 1; /* data should be free()'ed */
 	unsigned should_munmap : 1; /* data should be munmap()'ed */
 	unsigned dirty_submodule : 2;  /* For submodules: its work tree is dirty */
-	unsigned is_stdin : 1;
 #define DIRTY_SUBMODULE_UNTRACKED 1
 #define DIRTY_SUBMODULE_MODIFIED  2
+	unsigned is_stdin : 1;
 	unsigned has_more_entries : 1; /* only appear in combined diff */
 	struct userdiff_driver *driver;
 	/* data should be considered "binary"; -1 means "don't know yet" */
-- 
1.8.5.2.500.g8060133
Previous: Jeff KingNext: Junio C Hamano
Message 2 of 10 in “diff_filespec cleanups and optimizations”
  1. 0/5 diff_filespec cleanups and optimizationsJeff King, Jan 17, 2014
  2. 1/5 diff_filespec: reorder dirty_submodule macro definitionsJeff King, Jan 17, 2014
  3. Junio C HamanoJan 17, 2014
  4. Jeff KingJan 17, 2014
  5. Junio C HamanoJan 17, 2014
  6. 2/5 diff_filespec: drop funcname_pattern_ident fieldJeff King, Jan 17, 2014
  7. 3/5 diff_filespec: drop xfrm_flags fieldJeff King, Jan 17, 2014
  8. 4/5 diff_filespec: reorder is_binary fieldJeff King, Jan 17, 2014
  9. 5/5 diff_filespec: use only 2 bits for is_binary flagJeff King, Jan 17, 2014
  10. Junio C HamanoJan 17, 2014

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.