threads / patch / 24552

patchupload-pack: remove unused "create_full_pack" code in do_rev_list

Subject: [PATCH] upload-pack: remove unused "create_full_pack" code in do_rev_list

## tl;dr

3 messages between Jul 28, 2010 and Jul 28, 2010. Diffs are folded; open one to read it.

replies: 2people: 3as markdown or json

Nguyễn Thái Ngọc Duy· Jul 28, 2010, 09:39 UTC · lore
A bit of history in chronological order, the newest at bottom:
- 80ccaa7 (upload-pack: Move the revision walker into a separate function.)
   do_rev_list was introduced with create_full_pack argument
- 21edd3f (upload-pack: Run rev-list in an asynchronous function.)
   do_rev_list was now called by start_async, create_full_pack was
   passed by rev_list.data
- f0cea83 (Shift object enumeration out of upload-pack)
   rev_list.data was now zero permanently. Creating full pack was
   done by passing --all to pack-objects
- ae6a560 (run-command: support custom fd-set in async)
   rev_list.data = 0 was found out redudant and got rid of.
Get rid of the code as well, for less headache while reading do_rev_list.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
---
 upload-pack.c |   29 ++++++++++++-----------------
 1 files changed, 12 insertions(+), 17 deletions(-)
Show changes to upload-pack.c +12 −17
diff --git a/upload-pack.c b/upload-pack.c
index dc464d7..8f4c718 100644
--- a/upload-pack.c
+++ b/upload-pack.c
@@ -105,7 +105,7 @@ static void show_edge(struct commit *commit)
 	fprintf(pack_pipe, "-%s\n", sha1_to_hex(commit->object.sha1));
 }
 
-static int do_rev_list(int in, int out, void *create_full_pack)
+static int do_rev_list(int in, int out, void *user_data)
 {
 	int i;
 	struct rev_info revs;
@@ -118,23 +118,18 @@ static int do_rev_list(int in, int out, void *create_full_pack)
 	if (use_thin_pack)
 		revs.edge_hint = 1;
 
-	if (create_full_pack) {
-		const char *args[] = {"rev-list", "--all", NULL};
-		setup_revisions(2, args, &revs, NULL);
-	} else {
-		for (i = 0; i < want_obj.nr; i++) {
-			struct object *o = want_obj.objects[i].item;
-			/* why??? */
-			o->flags &= ~UNINTERESTING;
-			add_pending_object(&revs, o, NULL);
-		}
-		for (i = 0; i < have_obj.nr; i++) {
-			struct object *o = have_obj.objects[i].item;
-			o->flags |= UNINTERESTING;
-			add_pending_object(&revs, o, NULL);
-		}
-		setup_revisions(0, NULL, &revs, NULL);
+	for (i = 0; i < want_obj.nr; i++) {
+		struct object *o = want_obj.objects[i].item;
+		/* why??? */
+		o->flags &= ~UNINTERESTING;
+		add_pending_object(&revs, o, NULL);
+	}
+	for (i = 0; i < have_obj.nr; i++) {
+		struct object *o = have_obj.objects[i].item;
+		o->flags |= UNINTERESTING;
+		add_pending_object(&revs, o, NULL);
 	}
+	setup_revisions(0, NULL, &revs, NULL);
 	if (prepare_revision_walk(&revs))
 		die("revision walk setup failed");
 	mark_edges_uninteresting(revs.commits, &revs, show_edge);
-- 
1.7.1.rc1.69.g24c2f7
Elijah Newren· Jul 28, 2010, 16:47 UTC · re: Nguyễn Thái Ngọc Duy · lore

Re: [PATCH] upload-pack: remove unused "create_full_pack" code in do_rev_list

Hi,
2010/7/28 Nguyễn Thái Ngọc Duy <pclouds@gmail.com>:
Show 17 quoted lines
> A bit of history in chronological order, the newest at bottom:
>
> - 80ccaa7 (upload-pack: Move the revision walker into a separate function.)
>   do_rev_list was introduced with create_full_pack argument
>
> - 21edd3f (upload-pack: Run rev-list in an asynchronous function.)
>   do_rev_list was now called by start_async, create_full_pack was
>   passed by rev_list.data
>
> - f0cea83 (Shift object enumeration out of upload-pack)
>   rev_list.data was now zero permanently. Creating full pack was
>   done by passing --all to pack-objects
>
> - ae6a560 (run-command: support custom fd-set in async)
>   rev_list.data = 0 was found out redudant and got rid of.
>
> Get rid of the code as well, for less headache while reading do_rev_list.

Definitely a more detailed explanation than I gave for this patch (http://thread.gmane.org/gmane.comp.version-control.git/151667). :-)

← back to recent threads