From a74ddc24545ec45d0bb82ca2bb8f628ffdaa9da3 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 10 Oct 2014 12:04:39 -0400
Subject: [PATCH] Improve relative path determination using Java 7 Paths

---
 src/main/java/com/gitblit/servlet/DownloadZipFilter.java |   27 +++++++--------------------
 1 files changed, 7 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/gitblit/servlet/DownloadZipFilter.java b/src/main/java/com/gitblit/servlet/DownloadZipFilter.java
index f2064e3..42257a2 100644
--- a/src/main/java/com/gitblit/servlet/DownloadZipFilter.java
+++ b/src/main/java/com/gitblit/servlet/DownloadZipFilter.java
@@ -15,13 +15,7 @@
  */
 package com.gitblit.servlet;
 
-import javax.inject.Inject;
-import javax.inject.Singleton;
-
 import com.gitblit.Constants.AccessRestrictionType;
-import com.gitblit.manager.IRepositoryManager;
-import com.gitblit.manager.IRuntimeManager;
-import com.gitblit.manager.ISessionManager;
 import com.gitblit.models.RepositoryModel;
 import com.gitblit.models.UserModel;
 
@@ -33,17 +27,7 @@
  * @author James Moger
  *
  */
-@Singleton
 public class DownloadZipFilter extends AccessRestrictionFilter {
-
-	@Inject
-	public DownloadZipFilter(
-			IRuntimeManager runtimeManager,
-			ISessionManager sessionManager,
-			IRepositoryManager repositoryManager) {
-
-		super(runtimeManager, sessionManager, repositoryManager);
-	}
 
 	/**
 	 * Extract the repository name from the url.
@@ -54,11 +38,14 @@
 	@Override
 	protected String extractRepositoryName(String url) {
 		int a = url.indexOf("r=");
-		String repository = url.substring(a + 2);
-		if (repository.indexOf('&') > -1) {
-			repository = repository.substring(0, repository.indexOf('&'));
+		if (a > -1) {
+			String repository = url.substring(a + 2);
+			if (repository.indexOf('&') > -1) {
+				repository = repository.substring(0, repository.indexOf('&'));
+			}
+			return repository;
 		}
-		return repository;
+		return null;
 	}
 
 	/**

--
Gitblit v1.9.1