summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Jeff King <peff@peff.net>2014-11-24 13:40:44 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2014-12-17 11:04:39 -0800
commit76e86fc6e3523d28e8db00e7b10c33c553d996b8 (patch)
treeec06cc78824f9398e9b2e9df549f7ef06e7799bc
parentt1450: refactor ".", "..", and ".git" fsck tests (diff)
downloadtgif-76e86fc6e3523d28e8db00e7b10c33c553d996b8.tar.xz
fsck: notice .git case-insensitively
We complain about ".git" in a tree because it cannot be loaded into the index or checked out. Since we now also reject ".GIT" case-insensitively, fsck should notice the same, so that errors do not propagate. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--fsck.c2
-rwxr-xr-xt/t1450-fsck.sh1
2 files changed, 2 insertions, 1 deletions
diff --git a/fsck.c b/fsck.c
index 99c0497674..918bf9a318 100644
--- a/fsck.c
+++ b/fsck.c
@@ -175,7 +175,7 @@ static int fsck_tree(struct tree *item, int strict, fsck_error error_func)
has_dot = 1;
if (!strcmp(name, ".."))
has_dotdot = 1;
- if (!strcmp(name, ".git"))
+ if (!strcasecmp(name, ".git"))
has_dotgit = 1;
has_zero_pad |= *(char *)desc.buffer == '0';
update_tree_entry(&desc);
diff --git a/t/t1450-fsck.sh b/t/t1450-fsck.sh
index 4d8a4fe3c7..0438712553 100755
--- a/t/t1450-fsck.sh
+++ b/t/t1450-fsck.sh
@@ -263,6 +263,7 @@ done <<-\EOF
dot .
dotdot ..
dotgit .git
+dotgit-case .GIT
EOF
test_done