Fix "git log --merge --left-right"
authorJunio C Hamano <gitster@pobox.com>
Wed, 27 Feb 2008 07:18:38 +0000 (23:18 -0800)
committerJunio C Hamano <gitster@pobox.com>
Wed, 27 Feb 2008 23:42:05 +0000 (15:42 -0800)
The command did not reject the combination of these options, but
did not show left/right markers.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
revision.c
index 6e85aaa3fb30e98f3b02f094af7f1763577cdb8d..a399f27144bbabe3ee942408cdb90398990c3c85 100644 (file)
@@ -749,14 +749,9 @@ static void prepare_show_merge(struct rev_info *revs)
        add_pending_object(revs, &head->object, "HEAD");
        add_pending_object(revs, &other->object, "MERGE_HEAD");
        bases = get_merge_bases(head, other, 1);
-       while (bases) {
-               struct commit *it = bases->item;
-               struct commit_list *n = bases->next;
-               free(bases);
-               bases = n;
-               it->object.flags |= UNINTERESTING;
-               add_pending_object(revs, &it->object, "(merge-base)");
-       }
+       add_pending_commit_list(revs, bases, UNINTERESTING);
+       free_commit_list(bases);
+       head->object.flags |= SYMMETRIC_LEFT;
 
        if (!active_nr)
                read_cache();
@@ -775,6 +770,7 @@ static void prepare_show_merge(struct rev_info *revs)
                        i++;
        }
        revs->prune_data = prune;
+       revs->limited = 1;
 }
 
 int handle_revision_arg(const char *arg, struct rev_info *revs,