mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-06-19 20:19:33 +02:00
fix potential bugs
This commit is contained in:
@@ -44,9 +44,6 @@ import org.eclipse.jgit.lib.RepositoryCache;
|
||||
import org.eclipse.jgit.lib.RepositoryCache.FileKey;
|
||||
import org.eclipse.jgit.util.FS;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sonia.scm.repository.GitConfig;
|
||||
|
||||
//~--- JDK imports ------------------------------------------------------------
|
||||
@@ -63,12 +60,6 @@ import javax.servlet.http.HttpServletRequest;
|
||||
public class GitRepositoryResolver implements RepositoryResolver
|
||||
{
|
||||
|
||||
/** the logger for GitRepositoryResolver */
|
||||
private static final Logger logger =
|
||||
LoggerFactory.getLogger(GitRepositoryResolver.class);
|
||||
|
||||
//~--- constructors ---------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Constructs ...
|
||||
*
|
||||
@@ -171,16 +162,19 @@ public class GitRepositoryResolver implements RepositoryResolver
|
||||
}
|
||||
catch (RuntimeException e)
|
||||
{
|
||||
repository.close();
|
||||
|
||||
throw new RepositoryNotFoundException(repositoryName, e);
|
||||
}
|
||||
catch (IOException e)
|
||||
{
|
||||
repository.close();
|
||||
|
||||
throw new RepositoryNotFoundException(repositoryName, e);
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (repository != null)
|
||||
{
|
||||
repository.close();
|
||||
}
|
||||
}
|
||||
|
||||
return repository;
|
||||
}
|
||||
|
||||
@@ -41,9 +41,6 @@ import org.eclipse.jgit.lib.PersonIdent;
|
||||
import org.eclipse.jgit.lib.Repository;
|
||||
import org.eclipse.jgit.revwalk.RevCommit;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sonia.scm.io.RegexResourceProcessor;
|
||||
import sonia.scm.io.ResourceProcessor;
|
||||
import sonia.scm.util.IOUtil;
|
||||
|
||||
@@ -40,9 +40,7 @@ import com.google.inject.Provider;
|
||||
import com.google.inject.Singleton;
|
||||
|
||||
import sonia.scm.repository.HgRepositoryHandler;
|
||||
import sonia.scm.repository.Repository;
|
||||
import sonia.scm.repository.RepositoryManager;
|
||||
import sonia.scm.web.filter.PermissionFilter;
|
||||
import sonia.scm.web.filter.RegexPermissionFilter;
|
||||
import sonia.scm.web.security.WebSecurityContext;
|
||||
|
||||
@@ -66,8 +64,9 @@ public class HgPermissionFilter extends RegexPermissionFilter
|
||||
* @param repositoryManager
|
||||
*/
|
||||
@Inject
|
||||
public HgPermissionFilter(Provider<WebSecurityContext> securityContextProvider,
|
||||
RepositoryManager repositoryManager)
|
||||
public HgPermissionFilter(
|
||||
Provider<WebSecurityContext> securityContextProvider,
|
||||
RepositoryManager repositoryManager)
|
||||
{
|
||||
super(securityContextProvider, repositoryManager);
|
||||
}
|
||||
|
||||
@@ -35,9 +35,6 @@ package sonia.scm.web;
|
||||
|
||||
//~--- non-JDK imports --------------------------------------------------------
|
||||
|
||||
import sonia.scm.io.INIConfiguration;
|
||||
import sonia.scm.io.INIConfigurationWriter;
|
||||
import sonia.scm.io.INISection;
|
||||
import sonia.scm.io.RegexResourceProcessor;
|
||||
import sonia.scm.io.ResourceProcessor;
|
||||
import sonia.scm.repository.HgConfig;
|
||||
@@ -61,7 +58,6 @@ public class HgWebConfigWriter
|
||||
/** Field description */
|
||||
public static final String CGI_TEMPLATE = "/sonia/scm/hgweb.py";
|
||||
|
||||
|
||||
//~--- constructors ---------------------------------------------------------
|
||||
|
||||
/**
|
||||
|
||||
@@ -39,10 +39,8 @@ import com.google.inject.Inject;
|
||||
import com.google.inject.Provider;
|
||||
import com.google.inject.Singleton;
|
||||
|
||||
import sonia.scm.repository.Repository;
|
||||
import sonia.scm.repository.RepositoryManager;
|
||||
import sonia.scm.repository.SvnRepositoryHandler;
|
||||
import sonia.scm.web.filter.PermissionFilter;
|
||||
import sonia.scm.web.filter.RegexPermissionFilter;
|
||||
import sonia.scm.web.security.WebSecurityContext;
|
||||
|
||||
@@ -79,8 +77,9 @@ public class SvnPermissionFilter extends RegexPermissionFilter
|
||||
* @param repositoryManager
|
||||
*/
|
||||
@Inject
|
||||
public SvnPermissionFilter(Provider<WebSecurityContext> securityContextProvider,
|
||||
RepositoryManager repositoryManager)
|
||||
public SvnPermissionFilter(
|
||||
Provider<WebSecurityContext> securityContextProvider,
|
||||
RepositoryManager repositoryManager)
|
||||
{
|
||||
super(securityContextProvider, repositoryManager);
|
||||
}
|
||||
|
||||
@@ -33,10 +33,6 @@
|
||||
|
||||
package sonia.scm.repository;
|
||||
|
||||
//~--- non-JDK imports --------------------------------------------------------
|
||||
|
||||
import sonia.scm.util.Util;
|
||||
|
||||
//~--- JDK imports ------------------------------------------------------------
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@@ -303,7 +303,7 @@ public class XmlRepositoryManager extends AbstractRepositoryManager
|
||||
Repository fresh = repositoryDB.get(repository.getType(),
|
||||
repository.getName());
|
||||
|
||||
if (repository != null)
|
||||
if (fresh != null)
|
||||
{
|
||||
repository.copyProperties(fresh);
|
||||
}
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
package sonia.scm.web.cgi;
|
||||
|
||||
//~--- non-JDK imports --------------------------------------------------------
|
||||
@@ -37,6 +39,7 @@ import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import sonia.scm.util.IOUtil;
|
||||
import sonia.scm.util.Util;
|
||||
|
||||
//~--- JDK imports ------------------------------------------------------------
|
||||
|
||||
@@ -118,7 +121,7 @@ public class CGIRunner
|
||||
len = 0;
|
||||
}
|
||||
|
||||
if ((pathTranslated == null) || (pathTranslated.length() == 0))
|
||||
if (Util.isEmpty(pathTranslated))
|
||||
{
|
||||
pathTranslated = path;
|
||||
}
|
||||
@@ -130,12 +133,7 @@ public class CGIRunner
|
||||
environment.set("CONTENT_LENGTH", Integer.toString(len));
|
||||
environment.set("CONTENT_TYPE", req.getContentType());
|
||||
environment.set("GATEWAY_INTERFACE", "CGI/1.1");
|
||||
|
||||
if ((pathInfo != null) && (pathInfo.length() > 0))
|
||||
{
|
||||
environment.set("PATH_INFO", pathInfo);
|
||||
}
|
||||
|
||||
environment.set("PATH_INFO", pathInfo);
|
||||
environment.set("PATH_TRANSLATED", pathTranslated);
|
||||
environment.set("QUERY_STRING", req.getQueryString());
|
||||
environment.set("REMOTE_ADDR", req.getRemoteAddr());
|
||||
|
||||
@@ -220,13 +220,13 @@ public class RepositoryResource extends AbstractResource<Repository>
|
||||
|
||||
String ctxPath = request.getContextPath();
|
||||
|
||||
url.append(ctxPath);
|
||||
|
||||
if (ctxPath.endsWith("/"))
|
||||
{
|
||||
ctxPath = ctxPath.substring(0, ctxPath.length() - 1);
|
||||
}
|
||||
|
||||
url.append(ctxPath);
|
||||
|
||||
RepositoryHandler handler =
|
||||
repositoryManager.getHandler(repository.getType());
|
||||
|
||||
|
||||
@@ -39,15 +39,23 @@ import sonia.scm.web.plugin.WebResource;
|
||||
|
||||
//~--- JDK imports ------------------------------------------------------------
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import java.util.Comparator;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Sebastian Sdorra
|
||||
*/
|
||||
public class WebResourceComparator implements Comparator<WebResource>
|
||||
public class WebResourceComparator
|
||||
implements Comparator<WebResource>, Serializable
|
||||
{
|
||||
|
||||
/** Field description */
|
||||
private static final long serialVersionUID = -5916499507958881372L;
|
||||
|
||||
//~--- methods --------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user