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

[PATCH v2 2/3] tree-walk: simplify via strnncmp()

From
Jeremiah Mahler <jmmahler@gmail.com>
Date
Jun 17, 2014, 07:34 UTC
Message-ID
<dc427309f0c47c87f4783a3197aa6508f611bcb9.1402990051.git.jmmahler@gmail.com>
In-Reply-To
<cover.1402990051.git.jmmahler@gmail.com>

Simplify tree-walk.c using the strnncmp() function and remove the name_compare() function.

Signed-off-by: Jeremiah Mahler <jmmahler@gmail.com>
---
 tree-walk.c | 16 +++-------------
 1 file changed, 3 insertions(+), 13 deletions(-)
diff --git a/tree-walk.c b/tree-walk.c
index 4dc86c7..efbd3b7 100644
--- a/tree-walk.c
+++ b/tree-walk.c
@@ -144,16 +144,6 @@ struct tree_desc_x {
 	struct tree_desc_skip *skip;
 };
 
-static int name_compare(const char *a, int a_len,
-			const char *b, int b_len)
-{
-	int len = (a_len < b_len) ? a_len : b_len;
-	int cmp = memcmp(a, b, len);
-	if (cmp)
-		return cmp;
-	return (a_len - b_len);
-}
-
 static int check_entry_match(const char *a, int a_len, const char *b, int b_len)
 {
 	/*
@@ -174,7 +164,7 @@ static int check_entry_match(const char *a, int a_len, const char *b, int b_len)
 	 * scanning further.
 	 */
 
-	int cmp = name_compare(a, a_len, b, b_len);
+	int cmp = strnncmp(a, a_len, b, b_len);
 
 	/* Most common case first -- reading sync'd trees */
 	if (!cmp)
@@ -369,7 +359,7 @@ int traverse_trees(int n, struct tree_desc *t, struct traverse_info *info)
 				first_len = len;
 				continue;
 			}
-			if (name_compare(e->path, len, first, first_len) < 0) {
+			if (strnncmp(e->path, len, first, first_len) < 0) {
 				first = e->path;
 				first_len = len;
 			}
@@ -383,7 +373,7 @@ int traverse_trees(int n, struct tree_desc *t, struct traverse_info *info)
 				if (!e->path)
 					continue;
 				len = tree_entry_len(e);
-				if (name_compare(e->path, len, first, first_len))
+				if (strnncmp(e->path, len, first, first_len))
 					entry_clear(e);
 			}
 		}
-- 
2.0.0.695.g38ee9a9
Previous: Jeremiah MahlerNext: Jeremiah Mahler
Message 9 of 15 in “add strnncmp() function”
  1. 0/3 add strnncmp() functionJeremiah Mahler, Jun 17, 2014
  2. 1/3 add strnncmp() functionJeremiah Mahler, Jun 17, 2014
  3. Torsten BögershausenJun 17, 2014
  4. Jeremiah MahlerJun 17, 2014
  5. Erik Faye-LundJun 17, 2014
  6. Jeremiah MahlerJun 17, 2014
  7. Junio C HamanoJun 17, 2014
  8. Jeremiah MahlerJun 17, 2014
  9. 2/3 tree-walk: simplify via strnncmp()Jeremiah Mahler, Jun 17, 2014
  10. 3/3 unpack-trees: simplify via strnncmp()Jeremiah Mahler, Jun 17, 2014
  11. Torsten BögershausenJun 17, 2014
  12. Jeremiah MahlerJun 17, 2014
  13. Jonathan NiederJun 17, 2014
  14. Jeremiah MahlerJun 17, 2014
  15. Ondřej BílkaJun 18, 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.