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

[PATCH v2 07/19] builtin/branch: convert to struct object_id

From
brian m. carlson <sandals@crustytoothpaste.net>
Date
Feb 14, 2017, 02:31 UTC
Message-ID
<20170214023141.842922-8-sandals@crustytoothpaste.net>
In-Reply-To
<20170214023141.842922-1-sandals@crustytoothpaste.net>
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
---
 builtin/branch.c | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/builtin/branch.c b/builtin/branch.c
index 9d30f55b0b..faf472ff8f 100644
--- a/builtin/branch.c
+++ b/builtin/branch.c
@@ -32,7 +32,7 @@ static const char * const builtin_branch_usage[] = {
 };
 
 static const char *head;
-static unsigned char head_sha1[20];
+static struct object_id head_oid;
 
 static int branch_use_color = -1;
 static char branch_colors[][COLOR_MAXLEN] = {
@@ -117,13 +117,13 @@ static int branch_merged(int kind, const char *name,
 	if (kind == FILTER_REFS_BRANCHES) {
 		struct branch *branch = branch_get(name);
 		const char *upstream = branch_get_upstream(branch, NULL);
-		unsigned char sha1[20];
+		struct object_id oid;
 
 		if (upstream &&
 		    (reference_name = reference_name_to_free =
 		     resolve_refdup(upstream, RESOLVE_REF_READING,
-				    sha1, NULL)) != NULL)
-			reference_rev = lookup_commit_reference(sha1);
+				    oid.hash, NULL)) != NULL)
+			reference_rev = lookup_commit_reference(oid.hash);
 	}
 	if (!reference_rev)
 		reference_rev = head_rev;
@@ -153,10 +153,10 @@ static int branch_merged(int kind, const char *name,
 }
 
 static int check_branch_commit(const char *branchname, const char *refname,
-			       const unsigned char *sha1, struct commit *head_rev,
+			       const struct object_id *oid, struct commit *head_rev,
 			       int kinds, int force)
 {
-	struct commit *rev = lookup_commit_reference(sha1);
+	struct commit *rev = lookup_commit_reference(oid->hash);
 	if (!rev) {
 		error(_("Couldn't look up commit object for '%s'"), refname);
 		return -1;
@@ -183,7 +183,7 @@ static int delete_branches(int argc, const char **argv, int force, int kinds,
 			   int quiet)
 {
 	struct commit *head_rev = NULL;
-	unsigned char sha1[20];
+	struct object_id oid;
 	char *name = NULL;
 	const char *fmt;
 	int i;
@@ -207,7 +207,7 @@ static int delete_branches(int argc, const char **argv, int force, int kinds,
 	}
 
 	if (!force) {
-		head_rev = lookup_commit_reference(head_sha1);
+		head_rev = lookup_commit_reference(head_oid.hash);
 		if (!head_rev)
 			die(_("Couldn't look up commit object for HEAD"));
 	}
@@ -235,7 +235,7 @@ static int delete_branches(int argc, const char **argv, int force, int kinds,
 					RESOLVE_REF_READING
 					| RESOLVE_REF_NO_RECURSE
 					| RESOLVE_REF_ALLOW_BAD_NAME,
-					sha1, &flags);
+					oid.hash, &flags);
 		if (!target) {
 			error(remote_branch
 			      ? _("remote-tracking branch '%s' not found.")
@@ -245,13 +245,13 @@ static int delete_branches(int argc, const char **argv, int force, int kinds,
 		}
 
 		if (!(flags & (REF_ISSYMREF|REF_ISBROKEN)) &&
-		    check_branch_commit(bname.buf, name, sha1, head_rev, kinds,
+		    check_branch_commit(bname.buf, name, &oid, head_rev, kinds,
 					force)) {
 			ret = 1;
 			goto next;
 		}
 
-		if (delete_ref(name, is_null_sha1(sha1) ? NULL : sha1,
+		if (delete_ref(name, is_null_oid(&oid) ? NULL : oid.hash,
 			       REF_NODEREF)) {
 			error(remote_branch
 			      ? _("Error deleting remote-tracking branch '%s'")
@@ -267,7 +267,7 @@ static int delete_branches(int argc, const char **argv, int force, int kinds,
 			       bname.buf,
 			       (flags & REF_ISBROKEN) ? "broken"
 			       : (flags & REF_ISSYMREF) ? target
-			       : find_unique_abbrev(sha1, DEFAULT_ABBREV));
+			       : find_unique_abbrev(oid.hash, DEFAULT_ABBREV));
 		}
 		delete_branch_config(bname.buf);
 
@@ -693,7 +693,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix)
 
 	track = git_branch_track;
 
-	head = resolve_refdup("HEAD", 0, head_sha1, NULL);
+	head = resolve_refdup("HEAD", 0, head_oid.hash, NULL);
 	if (!head)
 		die(_("Failed to resolve HEAD as a valid ref."));
 	if (!strcmp(head, "HEAD"))
-- 
2.11.0
Previous: brian m. carlsonNext: brian m. carlson
Message 19 of 26 in “object_id part 6”
  1. 00/19 object_id part 6brian m. carlson, Feb 14, 2017
  2. 03/19 builtin/describe: convert to struct object_idbrian m. carlson, Feb 14, 2017
  3. 16/19 sha1_file: introduce an nth_packed_object_oid functionbrian m. carlson, Feb 14, 2017
  4. 11/19 builtin/replace: convert to struct object_idbrian m. carlson, Feb 14, 2017
  5. Michael HaggertyFeb 17, 2017
  6. 10/19 Convert remaining callers of resolve_refdup to object_idbrian m. carlson, Feb 14, 2017
  7. 09/19 builtin/merge: convert to struct object_idbrian m. carlson, Feb 14, 2017
  8. 08/19 builtin/clone: convert to struct object_idbrian m. carlson, Feb 14, 2017
  9. 13/19 refs: convert each_reflog_ent_fn to struct object_idbrian m. carlson, Feb 14, 2017
  10. 06/19 builtin/grep: convert to struct object_idbrian m. carlson, Feb 14, 2017
  11. 15/19 refs: simplify parsing of reflog entriesbrian m. carlson, Feb 14, 2017
  12. Michael HaggertyFeb 17, 2017
  13. 12/19 reflog-walk: convert struct reflog_info to struct object_idbrian m. carlson, Feb 14, 2017
  14. 14/19 hex: introduce parse_oid_hexbrian m. carlson, Feb 14, 2017
  15. Michael HaggertyFeb 17, 2017
  16. 17/19 Convert object iteration callbacks to struct object_idbrian m. carlson, Feb 14, 2017
  17. 19/19 wt-status: convert to struct object_idbrian m. carlson, Feb 14, 2017
  18. 18/19 builtin/merge-base: convert to struct object_idbrian m. carlson, Feb 14, 2017
  19. 07/19 builtin/branch: convert to struct object_idbrian m. carlson, Feb 14, 2017
  20. 05/19 builtin/fmt-merge-message: convert to struct object_idbrian m. carlson, Feb 14, 2017
  21. 01/19 builtin/commit: convert to struct object_idbrian m. carlson, Feb 14, 2017
  22. 04/19 builtin/fast-export: convert to struct object_idbrian m. carlson, Feb 14, 2017
  23. 02/19 builtin/diff-tree: convert to struct object_idbrian m. carlson, Feb 14, 2017
  24. Junio C HamanoFeb 14, 2017
  25. Michael HaggertyFeb 17, 2017
  26. brian m. carlsonFeb 17, 2017

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.