Sync with v2.16.1
* maint: Git 2.16.1 t5601-clone: test case-conflicting files on case-insensitive filesystem repository: pre-initialize hash algo pointermaint
commit
59c276cf4d
|
@ -0,0 +1,11 @@
|
||||||
|
Git v2.16.1 Release Notes
|
||||||
|
=========================
|
||||||
|
|
||||||
|
Fixes since v2.16
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
* "git clone" segfaulted when cloning a project that happens to
|
||||||
|
track two paths that differ only in case on a case insensitive
|
||||||
|
filesystem.
|
||||||
|
|
||||||
|
Does not contain any other documentation updates or code clean-ups.
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
/* The main repository */
|
/* The main repository */
|
||||||
static struct repository the_repo = {
|
static struct repository the_repo = {
|
||||||
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &the_index, NULL, 0, 0
|
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &the_index, &hash_algos[GIT_HASH_SHA1], 0, 0
|
||||||
};
|
};
|
||||||
struct repository *the_repository = &the_repo;
|
struct repository *the_repository = &the_repo;
|
||||||
|
|
||||||
|
|
|
@ -611,4 +611,21 @@ test_expect_success 'GIT_TRACE_PACKFILE produces a usable pack' '
|
||||||
git -C replay.git index-pack -v --stdin <tmp.pack
|
git -C replay.git index-pack -v --stdin <tmp.pack
|
||||||
'
|
'
|
||||||
|
|
||||||
|
hex2oct () {
|
||||||
|
perl -ne 'printf "\\%03o", hex for /../g'
|
||||||
|
}
|
||||||
|
|
||||||
|
test_expect_success 'clone on case-insensitive fs' '
|
||||||
|
git init icasefs &&
|
||||||
|
(
|
||||||
|
cd icasefs
|
||||||
|
o=$(git hash-object -w --stdin </dev/null | hex2oct) &&
|
||||||
|
t=$(printf "100644 X\0${o}100644 x\0${o}" |
|
||||||
|
git hash-object -w -t tree --stdin) &&
|
||||||
|
c=$(git commit-tree -m bogus $t) &&
|
||||||
|
git update-ref refs/heads/bogus $c &&
|
||||||
|
git clone -b bogus . bogus
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Loading…
Reference in New Issue