From: Jon Seymour Date: Thu, 7 Jul 2005 00:59:13 +0000 (+1000) Subject: [PATCH] Ensure list insertion method does not depend on position of --merge-order... X-Git-Tag: v0.99~37 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=a7336ae514738f159dad314d6674961427f043a6;p=git.git [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 --- diff --git a/rev-list.c b/rev-list.c index 0dd45129e..dfa093382 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)