Am 14.04.2017 um 22:32 schrieb git@xxxxxxxxxxxxxxxxx:
diff --git a/t/t1450-fsck.sh b/t/t1450-fsck.sh index 33a51c9..677e15a 100755 --- a/t/t1450-fsck.sh +++ b/t/t1450-fsck.sh @@ -689,4 +689,17 @@ test_expect_success 'bogus head does not fallback to all heads' ' ! grep $blob out ' +test_expect_success 'detect corrupt index file in fsck' ' + cp .git/index .git/index.backup && + test_when_finished "mv .git/index.backup .git/index" && + echo zzzzzzzz >zzzzzzzz && + git add zzzzzzzz && + sed -e "s/zzzzzzzz/yyyyyyyy/" .git/index >.git/index.yyy &&
sed on a binary file? Sooner or later we are going to run into portability issues.
+ mv .git/index.yyy .git/index && + # Confirm that fsck detects invalid checksum + test_must_fail git fsck --cache &&
You should ensure that this failure is really because of an invalid checksum. The failure could also be due to an extra LF at the end that sed inserted, no?
+ # Confirm that status no longer complains about invalid checksum + git status +' + test_done
-- Hannes