From b724448b589d60a9a7dda60cf30741048c98e199 Mon Sep 17 00:00:00 2001
From: Florian Zschocke <florian.zschocke@cycos.com>
Date: Mon, 26 Aug 2013 06:39:57 -0400
Subject: [PATCH] Fix set-gid bit clearing under Linux when effective gid is different from file gid.

---
 src/main/java/com/gitblit/utils/StringUtils.java |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/gitblit/utils/StringUtils.java b/src/main/java/com/gitblit/utils/StringUtils.java
index 86823db..cff3577 100644
--- a/src/main/java/com/gitblit/utils/StringUtils.java
+++ b/src/main/java/com/gitblit/utils/StringUtils.java
@@ -331,7 +331,7 @@
 		String fp = fullPath.replace('\\', '/').toLowerCase();
 		if (fp.startsWith(bp)) {
 			String relativePath = fullPath.substring(basePath.length()).replace('\\', '/');
-			if (relativePath.charAt(0) == '/') {
+			if (relativePath.length() > 0 && relativePath.charAt(0) == '/') {
 				relativePath = relativePath.substring(1);
 			}
 			return relativePath;

--
Gitblit v1.9.1