aboutsummaryrefslogtreecommitdiffstats
path: root/org.eclipse.jgit
diff options
context:
space:
mode:
authorShawn Pearce <sop@google.com>2014-11-24 10:27:49 -0800
committerMatthias Sohn <matthias.sohn@sap.com>2014-12-18 14:48:52 +0100
commit07612a610f99ce32b8409a854c74d7761e8f38eb (patch)
treeacde752e26210ec8a26d3247ac5f31501d18cf41 /org.eclipse.jgit
parent8d36fa343c689d1334ddc1f722c153203c1d13f7 (diff)
downloadjgit-07612a610f99ce32b8409a854c74d7761e8f38eb.tar.gz
jgit-07612a610f99ce32b8409a854c74d7761e8f38eb.zip
Always ignore case when forbidding .git in ObjectChecker
The component name ".GIT" inside a tree entry could confuse a case insensitive filesystem into looking at a submodule and not a directory entry. Disallow any case permutations of ".git" to prevent this confusion from entering a repository and showing up at a later date on a case insensitive system. Change-Id: Iaa3f768931d0d5764bf07ac5f6f3ff2b1fdda01b
Diffstat (limited to 'org.eclipse.jgit')
-rw-r--r--org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectChecker.java10
1 files changed, 4 insertions, 6 deletions
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectChecker.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectChecker.java
index d8a70c104f..92b4e39d5b 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectChecker.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/ObjectChecker.java
@@ -540,12 +540,10 @@ public class ObjectChecker {
return 1 <= c && c <= 31;
}
- private boolean isDotGit(byte[] buf, int p) {
- if (windows || macosx)
- return toLower(buf[p]) == 'g'
- && toLower(buf[p + 1]) == 'i'
- && toLower(buf[p + 2]) == 't';
- return buf[p] == 'g' && buf[p + 1] == 'i' && buf[p + 2] == 't';
+ private static boolean isDotGit(byte[] buf, int p) {
+ return toLower(buf[p]) == 'g'
+ && toLower(buf[p + 1]) == 'i'
+ && toLower(buf[p + 2]) == 't';
}
private static char toLower(byte b) {