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

[PATCH 13/20] builtin/rm: convert to use struct object_id

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Aug 28, 2016, 23:27 UTC
Message-ID
<20160828232757.373278-14-sandals@crustytoothpaste.net>
In-Reply-To
<20160828232757.373278-1-sandals@crustytoothpaste.net>
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 builtin/rm.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/builtin/rm.c b/builtin/rm.c
index 109969d5..3f3e24eb 100644
--- a/builtin/rm.c
+++ b/builtin/rm.c
@@ -107,7 +107,7 @@ static int check_submodules_use_gitfiles(void)
 	return errs;
 }
 
-static int check_local_mod(unsigned char *head, int index_only)
+static int check_local_mod(struct object_id *head, int index_only)
 {
 	/*
 	 * Items in list are already sorted in the cache order,
@@ -123,13 +123,13 @@ static int check_local_mod(unsigned char *head, int index_only)
 	struct string_list files_submodule = STRING_LIST_INIT_NODUP;
 	struct string_list files_local = STRING_LIST_INIT_NODUP;
 
-	no_head = is_null_sha1(head);
+	no_head = is_null_oid(head);
 	for (i = 0; i < list.nr; i++) {
 		struct stat st;
 		int pos;
 		const struct cache_entry *ce;
 		const char *name = list.entry[i].name;
-		unsigned char sha1[20];
+		struct object_id oid;
 		unsigned mode;
 		int local_changes = 0;
 		int staged_changes = 0;
@@ -197,9 +197,9 @@ static int check_local_mod(unsigned char *head, int index_only)
 		 * way as changed from the HEAD.
 		 */
 		if (no_head
-		     || get_tree_entry(head, name, sha1, &mode)
+		     || get_tree_entry(head->hash, name, oid.hash, &mode)
 		     || ce->ce_mode != create_ce_mode(mode)
-		     || hashcmp(ce->oid.hash, sha1))
+		     || oidcmp(&ce->oid, &oid))
 			staged_changes = 1;
 
 		/*
@@ -351,10 +351,10 @@ int cmd_rm(int argc, const char **argv, const char *prefix)
 	 * report no changes unless forced.
 	 */
 	if (!force) {
-		unsigned char sha1[20];
-		if (get_sha1("HEAD", sha1))
-			hashclr(sha1);
-		if (check_local_mod(sha1, index_only))
+		struct object_id oid;
+		if (get_oid("HEAD", &oid))
+			oidclr(&oid);
+		if (check_local_mod(&oid, index_only))
 			exit(1);
 	} else if (!index_only) {
 		if (check_submodules_use_gitfiles())
Previous: brian m. carlsonNext: brian m. carlson
Message 21 of 30 in “object_id part 5”
  1. 00/20 object_id part 5brian m. carlson, Aug 28, 2016
  2. 02/20 builtin/apply: convert static functions to struct object_idbrian m. carlson, Aug 28, 2016
  3. 07/20 builtin: convert textconv_object to use struct object_idbrian m. carlson, Aug 28, 2016
  4. 01/20 cache: convert struct cache_entry to use struct object_idbrian m. carlson, Aug 28, 2016
  5. Johannes SchindelinAug 29, 2016
  6. Jakub NarębskiAug 29, 2016
  7. Johannes SchindelinAug 29, 2016
  8. brian m. carlsonAug 29, 2016
  9. 18/20 builtin/am: convert to struct object_idbrian m. carlson, Aug 28, 2016
  10. Paul TanAug 29, 2016
  11. brian m. carlsonAug 29, 2016
  12. 06/20 builtin/cat-file: convert some static functions to struct object_idbrian m. carlson, Aug 28, 2016
  13. 17/20 refs: add an update_ref_oid function.brian m. carlson, Aug 28, 2016
  14. 03/20 builtin/blame: convert struct origin to use struct object_idbrian m. carlson, Aug 28, 2016
  15. 16/20 sha1_name: convert get_sha1_mb to struct object_idbrian m. carlson, Aug 28, 2016
  16. 19/20 builtin/commit-tree: convert to struct object_idbrian m. carlson, Aug 28, 2016
  17. 05/20 builtin/cat-file: convert struct expand_data to use struct object_idbrian m. carlson, Aug 28, 2016
  18. 20/20 builtin/reset: convert to use struct object_idbrian m. carlson, Aug 28, 2016
  19. Johannes SchindelinAug 31, 2016
  20. 04/20 builtin/log: convert some static functions to use struct object_idbrian m. carlson, Aug 28, 2016
  21. 13/20 builtin/rm: convert to use struct object_idbrian m. carlson, Aug 28, 2016
  22. 12/20 builtin/blame: convert file to use struct object_idbrian m. carlson, Aug 28, 2016
  23. 11/20 Convert read_mmblob to take struct object_id.brian m. carlson, Aug 28, 2016
  24. 14/20 notes: convert init_notes to use struct object_idbrian m. carlson, Aug 28, 2016
  25. 15/20 builtin/update-index: convert file to struct object_idbrian m. carlson, Aug 28, 2016
  26. 09/20 builtin/checkout: convert some static functions to struct object_idbrian m. carlson, Aug 28, 2016
  27. 08/20 streaming: make stream_blob_to_fd take struct object_idbrian m. carlson, Aug 28, 2016
  28. Johannes SchindelinAug 29, 2016
  29. 10/20 notes-merge: convert struct notes_merge_pair to struct object_idbrian m. carlson, Aug 28, 2016
  30. Johannes SchindelinAug 31, 2016

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.