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 <junkio@cox.net>
This commit is contained in:
Junio C Hamano 2006-02-26 21:19:14 -08:00
parent ae563542bf
commit d9cfb964c7

View File

@ -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;