summaryrefslogtreecommitdiff
path: root/sha1_name.c
diff options
context:
space:
mode:
authorMichael Haggerty <mhagger@alum.mit.edu>2015-05-25 18:39:05 +0000
committerJunio C Hamano <gitster@pobox.com>2015-05-25 12:19:35 -0700
commit9c5fe0b846c1abe5655f6885c83437adc979d022 (patch)
treee2af2ab7073a11f0cc523b9c7a10769a14055820 /sha1_name.c
parente2b0bcdf4a1106342dd443b7f86aef63bbe54897 (diff)
downloadgit-9c5fe0b846c1abe5655f6885c83437adc979d022.tar.gz
handle_one_ref(): rewrite to take an object_id argument
Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'sha1_name.c')
-rw-r--r--sha1_name.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sha1_name.c b/sha1_name.c
index 1aad0a3223..1cb810877a 100644
--- a/sha1_name.c
+++ b/sha1_name.c
@@ -831,11 +831,11 @@ static int get_sha1_1(const char *name, int len, unsigned char *sha1, unsigned l
/* Remember to update object flag allocation in object.h */
#define ONELINE_SEEN (1u<<20)
-static int handle_one_ref(const char *path,
- const unsigned char *sha1, int flag, void *cb_data)
+static int handle_one_ref(const char *path, const struct object_id *oid,
+ int flag, void *cb_data)
{
struct commit_list **list = cb_data;
- struct object *object = parse_object(sha1);
+ struct object *object = parse_object(oid->hash);
if (!object)
return 0;
if (object->type == OBJ_TAG) {
@@ -1371,10 +1371,8 @@ static int get_sha1_with_context_1(const char *name,
int pos;
if (!only_to_die && namelen > 2 && name[1] == '/') {
struct commit_list *list = NULL;
- struct each_ref_fn_sha1_adapter wrapped_handle_one_ref =
- {handle_one_ref, &list};
- for_each_ref(each_ref_fn_adapter, &wrapped_handle_one_ref);
+ for_each_ref(handle_one_ref, &list);
commit_list_sort_by_date(&list);
return get_sha1_oneline(name + 2, sha1, list);
}