From 0af861e0c8d7b7c6135bfc688be13370ac2c9468 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Fri, 25 Oct 2024 03:03:42 -0400 Subject: http-walker: use object_id instead of bare hash We long ago switched most code to using object_id structs instead of bare "unsigned char *" hashes. This gives us more type safety from the compiler, and generally makes it easier to understand what we expect in each parameter. But the dumb-http code has lagged behind. And indeed, the whole "walker" subsystem interface has the same problem, though http-walker is the only user left. So let's update the walker interface to pass object_id structs (which we already have anyway at all call sites!), and likewise use those within the http-walker methods that it calls. This cleans up the dumb-http code a bit, but will also let us fix a few more commonly used helper functions. Signed-off-by: Jeff King Signed-off-by: Taylor Blau --- walker.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'walker.c') diff --git a/walker.c b/walker.c index 807a7a3881..5ea7e5b392 100644 --- a/walker.c +++ b/walker.c @@ -157,7 +157,7 @@ static int process(struct walker *walker, struct object *obj) else { if (obj->flags & COMPLETE) return 0; - walker->prefetch(walker, obj->oid.hash); + walker->prefetch(walker, &obj->oid); } object_list_insert(obj, process_queue_end); @@ -186,7 +186,7 @@ static int loop(struct walker *walker) * the queue because we needed to fetch it first. */ if (! (obj->flags & TO_SCAN)) { - if (walker->fetch(walker, obj->oid.hash)) { + if (walker->fetch(walker, &obj->oid)) { stop_progress(&progress); report_missing(obj); return -1; -- cgit v1.3-6-g1900