From: Junio C Hamano Date: Mon, 27 Feb 2006 05:19:14 +0000 (-0800) Subject: rev-list split: minimum fixup. X-Git-Tag: v1.3.0-rc1~57^2~8 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=d9cfb964c7a59a39711da12e56563e10aa388331;p=git.git rev-list split: minimum fixup. This fixes "the other end has commit X but since then we tagged that commit with tag T, and he says he wants T -- what is the list of objects we need to send him?" question: git-rev-list --objects ^X T We ended up sending everything since the beginning of time X-<. Signed-off-by: Junio C Hamano --- diff --git a/rev-list.c b/rev-list.c index d1c52a6a9..630626ec6 100644 --- a/rev-list.c +++ b/rev-list.c @@ -214,8 +214,6 @@ static struct object_list **process_tree(struct tree *tree, return p; } -static struct object_list *pending_objects = NULL; - static void show_commit_list(struct commit_list *list) { struct object_list *objects = NULL, **p = &objects, *pending; @@ -226,7 +224,7 @@ static void show_commit_list(struct commit_list *list) if (process_commit(commit) == STOP) break; } - for (pending = pending_objects; pending; pending = pending->next) { + for (pending = revs.pending_objects; pending; pending = pending->next) { struct object *obj = pending->item; const char *name = pending->name; if (obj->flags & (UNINTERESTING | SEEN)) @@ -675,7 +673,7 @@ int main(int argc, const char **argv) } list = revs.commits; - if (list && list->next) + if (list) limited = 1; if (revs.topo_order) @@ -689,7 +687,7 @@ int main(int argc, const char **argv) limited = 1; diff_tree_setup_paths(revs.paths); } - if (revs.max_age || revs.min_age) + if (revs.max_age != -1 || revs.min_age != -1) limited = 1; save_commit_buffer = verbose_header;