This causes cgit to serve error pages, which is undesirable. This reverts commit5229c9b232, reversing changes made tof2b211131f.
63 lines
1.5 KiB
Bash
Executable file
63 lines
1.5 KiB
Bash
Executable file
#!/bin/sh
|
|
#
|
|
# Copyright (c) 2007 Carl D. Worth
|
|
#
|
|
|
|
test_description='git ls-files test (--with-tree).
|
|
|
|
This test runs git ls-files --with-tree and in particular in
|
|
a scenario known to trigger a crash with some versions of git.
|
|
'
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success setup '
|
|
|
|
# The bug we are exercising requires a fair number of entries
|
|
# in a sub-directory so that add_index_entry will trigger a
|
|
# realloc.
|
|
|
|
echo file >expected &&
|
|
mkdir sub &&
|
|
for n in 0 1 2 3 4 5
|
|
do
|
|
for m in 0 1 2 3 4 5 6 7 8 9
|
|
do
|
|
num=00$n$m &&
|
|
>sub/file-$num &&
|
|
echo file-$num >>expected ||
|
|
return 1
|
|
done
|
|
done &&
|
|
git add . &&
|
|
git commit -m "add a bunch of files" &&
|
|
|
|
# We remove them all so that we will have something to add
|
|
# back with --with-tree and so that we will definitely be
|
|
# under the realloc size to trigger the bug.
|
|
rm -rf sub &&
|
|
git commit -a -m "remove them all" &&
|
|
|
|
# The bug also requires some entry before our directory so that
|
|
# prune_path will modify the_index.cache
|
|
|
|
mkdir a_directory_that_sorts_before_sub &&
|
|
>a_directory_that_sorts_before_sub/file &&
|
|
mkdir sub &&
|
|
>sub/file &&
|
|
git add .
|
|
'
|
|
|
|
test_expect_success 'git -ls-files --with-tree should succeed from subdir' '
|
|
# We have to run from a sub-directory to trigger prune_path
|
|
# Then we finally get to run our --with-tree test
|
|
(
|
|
cd sub &&
|
|
git ls-files --with-tree=HEAD~1 >../output
|
|
)
|
|
'
|
|
|
|
test_expect_success \
|
|
'git -ls-files --with-tree should add entries from named tree.' \
|
|
'test_cmp expected output'
|
|
|
|
test_done
|