diff --git a/builtin/tag.c b/builtin/tag.c index 8869603595..79c8c28616 100644 --- a/builtin/tag.c +++ b/builtin/tag.c @@ -99,12 +99,11 @@ static int contains_test(struct commit *candidate, } /* - * This stack on the heap mimics the real stack in the previous implementation - * of contains_recurse() that had to be replaced because it easily led to a - * stack overflow. + * Mimicking the real stack, this stack lives on the heap, avoiding stack + * overflows. * - * Every stack item points at a certain commit whose parents are iterated over. - * Each item's current parent is the current next stack item's commit. + * At each recursion step, the stack items points to the commits whose + * ancestors are to be inspected. */ struct stack { int nr, alloc; diff --git a/t/t7004-tag.sh b/t/t7004-tag.sh index 2e008293fb..edaff13bd4 100755 --- a/t/t7004-tag.sh +++ b/t/t7004-tag.sh @@ -1380,9 +1380,8 @@ test_expect_success 'multiple --points-at are OR-ed together' ' test_cmp expect actual ' -# what about a deep repo ? - >expect +# ulimit is a bash builtin; we can rely on that in MinGW, but nowhere else test_expect_success MINGW '--contains works in a deep repo' ' ulimit -s 64 i=1 &&