There is no logical reason for this test to be here.  At the caller we
might be able to figure out its meaning.

Signed-off-by: Michael Haggerty <mhag...@alum.mit.edu>
---
 revision.c | 27 ++++++++++++---------------
 1 file changed, 12 insertions(+), 15 deletions(-)

diff --git a/revision.c b/revision.c
index 8ac88d6..2e0992b 100644
--- a/revision.c
+++ b/revision.c
@@ -2437,23 +2437,19 @@ static struct commit *get_revision_1(struct rev_info 
*revs)
 
 static void gc_boundary(struct object_array *array)
 {
-       unsigned nr = array->nr;
-       unsigned alloc = array->alloc;
+       unsigned nr = array->nr, i, j;
        struct object_array_entry *objects = array->objects;
 
-       if (alloc <= nr) {
-               unsigned i, j;
-               for (i = j = 0; i < nr; i++) {
-                       if (objects[i].item->flags & SHOWN)
-                               continue;
-                       if (i != j)
-                               objects[j] = objects[i];
-                       j++;
-               }
-               for (i = j; i < nr; i++)
-                       objects[i].item = NULL;
-               array->nr = j;
+       for (i = j = 0; i < nr; i++) {
+               if (objects[i].item->flags & SHOWN)
+                       continue;
+               if (i != j)
+                       objects[j] = objects[i];
+               j++;
        }
+       for (i = j; i < nr; i++)
+               objects[i].item = NULL;
+       array->nr = j;
 }
 
 static void create_boundary_commit_list(struct rev_info *revs)
@@ -2577,7 +2573,8 @@ static struct commit *get_revision_internal(struct 
rev_info *revs)
                if (p->flags & (CHILD_SHOWN | SHOWN))
                        continue;
                p->flags |= CHILD_SHOWN;
-               gc_boundary(&revs->boundary_commits);
+               if (revs->boundary_commits.alloc <= revs->boundary_commits.nr)
+                       gc_boundary(&revs->boundary_commits);
                add_object_array(p, NULL, &revs->boundary_commits);
        }
 
-- 
1.8.2.3

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to