rev-list: memory usage reduction.
authorJunio C Hamano <junkio@cox.net>
Wed, 29 Mar 2006 01:28:04 +0000 (17:28 -0800)
committerJunio C Hamano <junkio@cox.net>
Wed, 29 Mar 2006 01:29:09 +0000 (17:29 -0800)
We do not need to track object refs, neither we need to save commit
unless we are doing verbose header.  A lot of traversal happens
inside prepare_revision_walk() these days so setting things up before
calling that function is necessary.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Acked-by: Linus Torvalds <torvalds@osdl.org>
rev-list.c

index 441c437..0903edb 100644 (file)
@@ -358,6 +358,9 @@ int main(int argc, const char **argv)
            (!(revs.tag_objects||revs.tree_objects||revs.blob_objects) && !revs.pending_objects))
                usage(rev_list_usage);
 
+       save_commit_buffer = verbose_header;
+       track_object_refs = 0;
+
        prepare_revision_walk(&revs);
        if (revs.tree_objects)
                mark_edges_uninteresting(revs.commits);
@@ -365,9 +368,6 @@ int main(int argc, const char **argv)
        if (bisect_list)
                revs.commits = find_bisection(revs.commits);
 
-       save_commit_buffer = verbose_header;
-       track_object_refs = 0;
-
        show_commit_list(&revs);
 
        return 0;