diff options
author | Junio C Hamano <gitster@pobox.com> | 2014-12-17 11:46:57 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-12-17 11:46:57 -0800 |
commit | 77933f4449b8d6aa7529d627f3c7b55336f491db (patch) | |
tree | 91ce62aba00c10c6f2f4346f404f64dec00b5c3a /fsck.c | |
parent | Merge branch 'maint' of git://github.com/git-l10n/git-po into maint (diff) | |
parent | Git 2.1.4 (diff) | |
download | tgif-77933f4449b8d6aa7529d627f3c7b55336f491db.tar.xz |
Sync with v2.1.4
* maint-2.1:
Git 2.1.4
Git 2.0.5
Git 1.9.5
Git 1.8.5.6
fsck: complain about NTFS ".git" aliases in trees
read-cache: optionally disallow NTFS .git variants
path: add is_ntfs_dotgit() helper
fsck: complain about HFS+ ".git" aliases in trees
read-cache: optionally disallow HFS+ .git variants
utf8: add is_hfs_dotgit() helper
fsck: notice .git case-insensitively
t1450: refactor ".", "..", and ".git" fsck tests
verify_dotfile(): reject .git case-insensitively
read-tree: add tests for confusing paths like ".." and ".git"
unpack-trees: propagate errors adding entries to the index
Diffstat (limited to 'fsck.c')
-rw-r--r-- | fsck.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -7,6 +7,7 @@ #include "tag.h" #include "fsck.h" #include "refs.h" +#include "utf8.h" static int fsck_walk_tree(struct tree *tree, fsck_walk_func walk, void *data) { @@ -171,7 +172,9 @@ static int fsck_tree(struct tree *item, int strict, fsck_error error_func) has_empty_name |= !*name; has_dot |= !strcmp(name, "."); has_dotdot |= !strcmp(name, ".."); - has_dotgit |= !strcmp(name, ".git"); + has_dotgit |= (!strcmp(name, ".git") || + is_hfs_dotgit(name) || + is_ntfs_dotgit(name)); has_zero_pad |= *(char *)desc.buffer == '0'; update_tree_entry(&desc); |