Revert "Correctly redirect legacy URIs with patchset"
This reverts commit 3bd2c3310ef8da3a33e4568c64c0900086f7e5c8.
Release-Notes: skip
Change-Id: Ideb6d612c979f08e1cee5550eb2e0a4965fa5db9
diff --git a/java/com/google/gerrit/httpd/NumericChangeIdRedirectServlet.java b/java/com/google/gerrit/httpd/NumericChangeIdRedirectServlet.java
index 5d15a56..48dcea2 100644
--- a/java/com/google/gerrit/httpd/NumericChangeIdRedirectServlet.java
+++ b/java/com/google/gerrit/httpd/NumericChangeIdRedirectServlet.java
@@ -24,8 +24,6 @@
import com.google.inject.Inject;
import com.google.inject.Singleton;
import java.io.IOException;
-import java.util.Arrays;
-import java.util.List;
import java.util.Optional;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
@@ -60,11 +58,9 @@
int commentIdx = uriPath.indexOf("/comment");
String idString = commentIdx == -1 ? uriPath : uriPath.substring(0, commentIdx);
- List<String> uriSegments = Arrays.stream(idString.split("/")).toList();
-
- idString = uriSegments.get(0);
- String psString = (uriSegments.size() > 1) ? uriSegments.get(1) : null;
-
+ if (idString.endsWith("/")) {
+ idString = idString.substring(0, idString.length() - 1);
+ }
Optional<Change.Id> id = Change.Id.tryParse(idString);
if (id.isEmpty()) {
rsp.sendError(HttpServletResponse.SC_NOT_FOUND);
@@ -85,8 +81,6 @@
if (commentIdx > -1) {
// path already contain a trailing /, hence we start from "commentIdx + 1"
path = path + uriPath.substring(commentIdx + 1);
- } else if (psString != null) {
- path += psString;
}
UrlModule.toGerrit(path, req, rsp);
}
diff --git a/java/com/google/gerrit/httpd/UrlModule.java b/java/com/google/gerrit/httpd/UrlModule.java
index 1d62efe..7a100c7 100644
--- a/java/com/google/gerrit/httpd/UrlModule.java
+++ b/java/com/google/gerrit/httpd/UrlModule.java
@@ -73,8 +73,6 @@
serveRegex("^/register$").with(registerScreen(false));
serveRegex("^/register/(.+)$").with(registerScreen(true));
serveRegex("^(?:/c)?/([1-9][0-9]*)/?$").with(NumericChangeIdRedirectServlet.class);
- serveRegex("^(?:/c)?/([1-9][0-9]*)/([1-9][0-9]*)/?$")
- .with(NumericChangeIdRedirectServlet.class);
serveRegex("^(?:/c)?/([1-9][0-9]*)/comment/\\w+/?$").with(NumericChangeIdRedirectServlet.class);
serveRegex("^/p/(.*)$").with(queryProjectNew());
serveRegex("^/r/(.+)/?$").with(DirectChangeByCommit.class);
diff --git a/javatests/com/google/gerrit/acceptance/rest/RestApiServletIT.java b/javatests/com/google/gerrit/acceptance/rest/RestApiServletIT.java
index 20554ac..5c1f7c2 100644
--- a/javatests/com/google/gerrit/acceptance/rest/RestApiServletIT.java
+++ b/javatests/com/google/gerrit/acceptance/rest/RestApiServletIT.java
@@ -33,7 +33,6 @@
import com.google.gerrit.extensions.restapi.Url;
import com.google.gerrit.httpd.restapi.ParameterParser;
import com.google.gerrit.httpd.restapi.RestApiServlet;
-import com.google.gerrit.server.query.change.ChangeData;
import com.google.inject.Inject;
import java.io.IOException;
import java.util.regex.Pattern;
@@ -450,30 +449,6 @@
}
@Test
- public void testNumericChangeIdWithPSRedirectWithPrefix() throws Exception {
- ChangeData changeData = createChange().getChange();
- int psNumber = changeData.currentPatchSet().id().get();
- int changeNumber = changeData.getId().get();
-
- String redirectUri = String.format("/c/%s/+/%d/%d", project.get(), changeNumber, psNumber);
- anonymousRestSession
- .get(String.format("/c/%d/%d", changeNumber, psNumber))
- .assertTemporaryRedirect(redirectUri);
- }
-
- @Test
- public void testNumericChangeIdWithPSAndSlashRedirectWithPrefix() throws Exception {
- ChangeData changeData = createChange().getChange();
- int psNumber = changeData.currentPatchSet().id().get();
- int changeNumber = changeData.getId().get();
-
- String redirectUri = String.format("/c/%s/+/%d/%d", project.get(), changeNumber, psNumber);
- anonymousRestSession
- .get(String.format("/c/%d/%d/", changeNumber, psNumber))
- .assertTemporaryRedirect(redirectUri);
- }
-
- @Test
public void testCommentLinkWithoutPrefixRedirects() throws Exception {
int changeNumber = createChange().getChange().getId().get();
String commentId = "ff3303fd_8341647b";