2017-03-31 19:32:14 +02:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
test_description='Test the lazy init name hash with various folder structures'
|
|
|
|
|
|
|
|
. ./test-lib.sh
|
|
|
|
|
2018-03-24 08:44:48 +01:00
|
|
|
if test 1 -eq $($GIT_BUILD_DIR/t/helper/test-tool online-cpus)
|
2017-04-03 17:16:42 +02:00
|
|
|
then
|
|
|
|
skip_all='skipping lazy-init tests, single cpu'
|
|
|
|
test_done
|
|
|
|
fi
|
|
|
|
|
|
|
|
LAZY_THREAD_COST=2000
|
|
|
|
|
2017-03-31 19:32:14 +02:00
|
|
|
test_expect_success 'no buffer overflow in lazy_init_name_hash' '
|
|
|
|
(
|
2017-04-03 17:16:42 +02:00
|
|
|
test_seq $LAZY_THREAD_COST | sed "s/^/a_/"
|
2017-03-31 19:32:14 +02:00
|
|
|
echo b/b/b
|
2017-04-03 17:16:42 +02:00
|
|
|
test_seq $LAZY_THREAD_COST | sed "s/^/c_/"
|
2017-03-31 19:32:14 +02:00
|
|
|
test_seq 50 | sed "s/^/d_/" | tr "\n" "/"; echo d
|
|
|
|
) |
|
2017-04-03 17:16:42 +02:00
|
|
|
sed "s/^/100644 $EMPTY_BLOB /" |
|
2017-03-31 19:32:14 +02:00
|
|
|
git update-index --index-info &&
|
2018-03-24 08:44:33 +01:00
|
|
|
test-tool lazy-init-name-hash -m
|
2017-03-31 19:32:14 +02:00
|
|
|
'
|
|
|
|
|
|
|
|
test_done
|