From a7336ae514738f159dad314d6674961427f043a6 Mon Sep 17 00:00:00 2001 From: Jon Seymour Date: Thu, 7 Jul 2005 10:59:13 +1000 Subject: [PATCH] [PATCH] Ensure list insertion method does not depend on position of --merge-order argument This change ensures that git-rev-list --merge-order produces the same result irrespective of what position the --merge-order argument appears in the argument list. Signed-off-by: Jon Seymour Signed-off-by: Linus Torvalds --- rev-list.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/rev-list.c b/rev-list.c index 0dd45129..dfa09338 100644 --- a/rev-list.c +++ b/rev-list.c @@ -410,10 +410,8 @@ static struct commit *get_commit_reference(const char *name, unsigned int flags) int main(int argc, char **argv) { struct commit_list *list = NULL; - struct commit_list *(*insert)(struct commit *, struct commit_list **); int i, limited = 0; - insert = insert_by_date; for (i = 1 ; i < argc; i++) { int flags; char *arg = argv[i]; @@ -463,7 +461,6 @@ int main(int argc, char **argv) } if (!strcmp(arg, "--merge-order")) { merge_order = 1; - insert = commit_list_insert; continue; } if (!strcmp(arg, "--show-breaks")) { @@ -490,10 +487,11 @@ int main(int argc, char **argv) if (commit->object.flags & SEEN) continue; commit->object.flags |= SEEN; - insert(commit, &list); + commit_list_insert(commit, &list); } if (!merge_order) { + sort_by_date(&list); if (limited) list = limit_list(list); if (topo_order) -- 2.11.0