threads / patch / 56389

patcharchive: convert queue_directory to struct object_id

Subject: [PATCH] archive: convert queue_directory to struct object_id

## tl;dr

3 messages between Aug 27, 2021 and Aug 27, 2021. Diffs are folded; open one to read it.

replies: 2people: 3as markdown or json

René Scharfe· Aug 27, 2021, 19:59 UTC · lore

Pass the struct object_id on instead of just its hash member. This is simpler and avoids the need to guess the algorithm.

Signed-off-by: René Scharfe <l.s.r@web.de>
---
 archive.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
Show changes to archive.c +3 −5
diff --git a/archive.c b/archive.c
index 3c266d1d7b..a3bbb09125 100644
--- a/archive.c
+++ b/archive.c
@@ -191,7 +191,7 @@ static int write_archive_entry(const struct object_id *oid, const char *base,
 	return err;
 }

-static void queue_directory(const unsigned char *sha1,
+static void queue_directory(const struct object_id *oid,
 		struct strbuf *base, const char *filename,
 		unsigned mode, struct archiver_context *c)
 {
@@ -203,7 +203,7 @@ static void queue_directory(const unsigned char *sha1,
 	d->mode	   = mode;
 	c->bottom  = d;
 	d->len = xsnprintf(d->path, len, "%.*s%s/", (int)base->len, base->buf, filename);
-	oidread(&d->oid, sha1);
+	oidcpy(&d->oid, oid);
 }

 static int write_directory(struct archiver_context *c)
@@ -250,8 +250,7 @@ static int queue_or_write_archive_entry(const struct object_id *oid,

 		if (check_attr_export_ignore(check))
 			return 0;
-		queue_directory(oid->hash, base, filename,
-				mode, c);
+		queue_directory(oid, base, filename, mode, c);
 		return READ_TREE_RECURSIVE;
 	}

--
2.33.0
brian m. carlson· Aug 27, 2021, 20:40 UTC · re: René Scharfe · lore

Re: [PATCH] archive: convert queue_directory to struct object_id

On 2021-08-27 at 19:59:16, René Scharfe wrote:
> Pass the struct object_id on instead of just its hash member.
> This is simpler and avoids the need to guess the algorithm.
Seems reasonable.
-- 
brian m. carlson (he/him or they/them)
Toronto, Ontario, CA
Junio C Hamano· Aug 27, 2021, 21:18 UTC · re: brian m. carlson · lore

Re: [PATCH] archive: convert queue_directory to struct object_id

"brian m. carlson" <sandals@crustytoothpaste.net> writes:
Show 5 quoted lines
> On 2021-08-27 at 19:59:16, René Scharfe wrote:
>> Pass the struct object_id on instead of just its hash member.
>> This is simpler and avoids the need to guess the algorithm.
>
> Seems reasonable.

I guess this is about the oidread() you added at the end of the function, so I'd take the above as your Acked-by ;-)

Thanks, both.  Will queue.

← back to recent threads