summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSaša Živkov <zivkov@gmail.com>2015-03-26 13:17:54 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-03-26 13:17:54 +0000
commit081b8b03fb4bd500c38e391351edb304bb206cde (patch)
tree557328bbcee51f2e3e47a3050bab7d7c17bb8708
parentd0ca6099a5903224d3587e2742242ee5a9c6f070 (diff)
parent4a3ab5fe5210c0a967d19ffcb1c678c37450551b (diff)
Merge "Do not return 403 when clicking on Gitweb breadcrumb" into stable-2.10
-rw-r--r--gerrit-httpd/src/main/java/com/google/gerrit/httpd/gitweb/GitWebServlet.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/gerrit-httpd/src/main/java/com/google/gerrit/httpd/gitweb/GitWebServlet.java b/gerrit-httpd/src/main/java/com/google/gerrit/httpd/gitweb/GitWebServlet.java
index f593caca84..8f0a2025a6 100644
--- a/gerrit-httpd/src/main/java/com/google/gerrit/httpd/gitweb/GitWebServlet.java
+++ b/gerrit-httpd/src/main/java/com/google/gerrit/httpd/gitweb/GitWebServlet.java
@@ -29,6 +29,7 @@
package com.google.gerrit.httpd.gitweb;
+import com.google.gerrit.common.PageLinks;
import com.google.gerrit.common.data.GerritConfig;
import com.google.gerrit.extensions.restapi.Url;
import com.google.gerrit.httpd.GitWebConfig;
@@ -79,6 +80,8 @@ class GitWebServlet extends HttpServlet {
private static final Logger log =
LoggerFactory.getLogger(GitWebServlet.class);
+ private static final String PROJECT_LIST_ACTION = "project_list";
+
private final Set<String> deniedActions;
private final int bufferSize = 8192;
private final File gitwebCgi;
@@ -119,7 +122,6 @@ class GitWebServlet extends HttpServlet {
deniedActions.add("forks");
deniedActions.add("opml");
- deniedActions.add("project_list");
deniedActions.add("project_index");
_env = new EnvList();
@@ -363,6 +365,12 @@ class GitWebServlet extends HttpServlet {
return;
}
+ if (params.get("a").equals(PROJECT_LIST_ACTION)) {
+ rsp.sendRedirect(req.getContextPath() + "/#" + PageLinks.ADMIN_PROJECTS
+ + "?filter=" + Url.encode(params.get("pf") + "/"));
+ return;
+ }
+
String name = params.get("p");
if (name == null) {
rsp.sendError(HttpServletResponse.SC_NOT_FOUND);