From 0b298b78a7c1fcda7f799af0c045a6c2e829a6bf Mon Sep 17 00:00:00 2001
From: Joel Johnson <mrjoel@lixil.net>
Date: Wed, 09 Dec 2015 09:38:41 -0500
Subject: [PATCH] add site documentation for HTTP header authentication
---
src/main/java/com/gitblit/servlet/RawServlet.java | 23 +++++++----------------
1 files changed, 7 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/gitblit/servlet/RawServlet.java b/src/main/java/com/gitblit/servlet/RawServlet.java
index 1d2724b..81793bc 100644
--- a/src/main/java/com/gitblit/servlet/RawServlet.java
+++ b/src/main/java/com/gitblit/servlet/RawServlet.java
@@ -166,23 +166,14 @@
}
// determine repository and resource from url
- String repository = "";
+ String repository = path;
Repository r = null;
- int offset = 0;
- while (r == null) {
- int slash = path.indexOf('/', offset);
- if (slash == -1) {
- repository = path;
- } else {
- repository = path.substring(0, slash);
- }
- offset = ( slash + 1 );
+ int terminator = repository.length();
+ do {
+ repository = repository.substring(0, terminator);
r = repositoryManager.getRepository(repository, false);
- if (repository.equals(path)) {
- // either only repository in url or no repository found
- break;
- }
- }
+ terminator = repository.lastIndexOf('/');
+ } while (r == null && terminator > -1 );
ServletContext context = request.getSession().getServletContext();
@@ -242,7 +233,7 @@
try {
String ext = StringUtils.getFileExtension(file).toLowerCase();
- String contentType = quickContentTypes.get(ext);
+ String contentType = file.charAt(0) == '.' ? "text/plain" : quickContentTypes.get(ext);
if (contentType == null) {
List<String> exts = runtimeManager.getSettings().getStrings(Keys.web.prettyPrintExtensions);
--
Gitblit v1.9.1