diff options
author | Michael Haggerty <mhagger@alum.mit.edu> | 2017-07-01 20:31:08 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-07-03 10:01:57 -0700 |
commit | 9308b7f3ca9bbe7e76b16c832617a8c6aea5ade3 (patch) | |
tree | 600c37ecabfa3871dafdb87914f23e89184b0f78 /t | |
parent | t3210: add some tests of bogus packed-refs file contents (diff) | |
download | tgif-9308b7f3ca9bbe7e76b16c832617a8c6aea5ade3.tar.xz |
read_packed_refs(): die if `packed-refs` contains bogus data
The old code ignored any lines that it didn't understand, including
unterminated lines. This is dangerous. Instead, `die()` if the
`packed-refs` file contains any unterminated lines or lines that we
don't know how to handle.
This fixes the tests added in the last commit.
Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-x | t/t3210-pack-refs.sh | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/t/t3210-pack-refs.sh b/t/t3210-pack-refs.sh index 4b65836283..2bb4b25ed9 100755 --- a/t/t3210-pack-refs.sh +++ b/t/t3210-pack-refs.sh @@ -194,7 +194,7 @@ test_expect_success 'notice d/f conflict with existing ref' ' test_must_fail git branch foo/bar/baz/lots/of/extra/components ' -test_expect_failure 'reject packed-refs with unterminated line' ' +test_expect_success 'reject packed-refs with unterminated line' ' cp .git/packed-refs .git/packed-refs.bak && test_when_finished "mv .git/packed-refs.bak .git/packed-refs" && printf "%s" "$HEAD refs/zzzzz" >>.git/packed-refs && @@ -203,7 +203,7 @@ test_expect_failure 'reject packed-refs with unterminated line' ' test_cmp expected_err err ' -test_expect_failure 'reject packed-refs containing junk' ' +test_expect_success 'reject packed-refs containing junk' ' cp .git/packed-refs .git/packed-refs.bak && test_when_finished "mv .git/packed-refs.bak .git/packed-refs" && printf "%s\n" "bogus content" >>.git/packed-refs && @@ -212,7 +212,7 @@ test_expect_failure 'reject packed-refs containing junk' ' test_cmp expected_err err ' -test_expect_failure 'reject packed-refs with a short SHA-1' ' +test_expect_success 'reject packed-refs with a short SHA-1' ' cp .git/packed-refs .git/packed-refs.bak && test_when_finished "mv .git/packed-refs.bak .git/packed-refs" && printf "%.7s %s\n" $HEAD refs/zzzzz >>.git/packed-refs && |