From 7dc929e9427151d6d640671bac8333357d2a0d22 Mon Sep 17 00:00:00 2001 From: Vladimir Kotal Date: Mon, 1 Sep 2025 19:42:45 +0200 Subject: [PATCH 1/4] add missing space --- opengrok-web/src/main/java/org/opengrok/web/PageConfig.java | 1 + 1 file changed, 1 insertion(+) diff --git a/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java b/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java index bc6d0aeac18..eb467ed1178 100644 --- a/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java +++ b/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java @@ -368,6 +368,7 @@ private void populateGenreIfEmpty(DiffData data, InputStream[] inArray) { } } } + private void populateRevisionData(DiffData data) { try { data.revision = Diff.diff(data.file[0], data.file[1]); From b76b21f7c1d308423610e17ab45278af83177637 Mon Sep 17 00:00:00 2001 From: Vladimir Kotal Date: Mon, 1 Sep 2025 19:42:53 +0200 Subject: [PATCH 2/4] add missing parameter --- opengrok-web/src/main/java/org/opengrok/web/PageConfig.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java b/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java index eb467ed1178..9a263da3daa 100644 --- a/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java +++ b/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java @@ -385,7 +385,7 @@ private void populateRevisionURLDetails(DiffData data, String[] filePath) { filePath[i] + "@" + data.rev[i], null); data.param[i] = u.getRawQuery(); } catch (URISyntaxException e) { - LOGGER.log(Level.WARNING, "Failed to create URI: ", Laundromat.launderLog(e.toString())); + LOGGER.log(Level.WARNING, "Failed to create URI: {}", Laundromat.launderLog(e.toString())); } }); } From 42cc87b75da0698dd2c6b3eae76bac9d95344e63 Mon Sep 17 00:00:00 2001 From: Vladimir Kotal Date: Mon, 1 Sep 2025 19:43:04 +0200 Subject: [PATCH 3/4] use isEmpty() instead of length check --- opengrok-web/src/main/java/org/opengrok/web/PageConfig.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java b/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java index 9a263da3daa..431c85d7c51 100644 --- a/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java +++ b/opengrok-web/src/main/java/org/opengrok/web/PageConfig.java @@ -1220,7 +1220,7 @@ public boolean isDir() { } private static String trailingSlash(String path) { - return path.length() == 0 || path.charAt(path.length() - 1) != PATH_SEPARATOR + return path.isEmpty() || path.charAt(path.length() - 1) != PATH_SEPARATOR ? PATH_SEPARATOR_STRING : ""; } From 3fcfaf818a2f65ed923973a0620d109001d5f8f4 Mon Sep 17 00:00:00 2001 From: Vladimir Kotal Date: Mon, 1 Sep 2025 19:43:23 +0200 Subject: [PATCH 4/4] construct URL from scratch --- opengrok-web/src/main/webapp/diff.jsp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/opengrok-web/src/main/webapp/diff.jsp b/opengrok-web/src/main/webapp/diff.jsp index 19b232a9b3f..a2d9cc45c79 100644 --- a/opengrok-web/src/main/webapp/diff.jsp +++ b/opengrok-web/src/main/webapp/diff.jsp @@ -145,7 +145,7 @@ include file="/mast.jsp" int ln2 = 0; String rp1 = data.getParam(0); String rp2 = data.getParam(1); - String reqURI = request.getRequestURI(); + String baseURL = request.getContextPath() + Prefix.DIFF_P + cfg.getUriEncodedPath(); String[] file1 = data.getFile(0); String[] file2 = data.getFile(1); @@ -169,7 +169,7 @@ include file="/mast.jsp" } %><% } else { - %> ?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= rp1 %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= rp2 %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= t.getAbbrev() %>& <%= QueryParameters.DIFF_LEVEL_PARAM_EQ %><%= full ? '1' : '0'%>"><%= t.toString() %> @@ -186,7 +186,7 @@ include file="/mast.jsp"
<% if (!full) { %> - ?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= Util.uriEncode(rp1) %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= Util.uriEncode(rp2) %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= type.getAbbrev() %>& <%= QueryParameters.DIFF_LEVEL_PARAM_EQ %>1">full @@ -194,13 +194,13 @@ include file="/mast.jsp" } else { %> full - ?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= Util.uriEncode(rp1) %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= Util.uriEncode(rp2) %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= type.getAbbrev() %>& <%= QueryParameters.DIFF_LEVEL_PARAM_EQ %>0">compact<% } %>jumper - ?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= Util.uriEncode(rp1) %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= Util.uriEncode(rp2) %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= DiffType.TEXT %>& action=download">download diff<% @@ -277,7 +277,7 @@ action=download">download diff<% Util.htmlize(file2[j]) %>
<% } %>
--- <%= cn2 - ln2 - 16 - %> unchanged lines hidden (?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= rp1 %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= rp2 %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= type.getAbbrev() %>& @@ -341,7 +341,7 @@ action=download">download diff<% Util.htmlize(file1[j]) %>
<% } %>
--- <%= cn1 - ln1 - 16 - %> unchanged lines hidden (?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= rp1 %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= rp2 %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= type.getAbbrev() %>& @@ -358,7 +358,7 @@ action=download">download diff<% Util.htmlize(file2[j]) %>
<% } %>
--- <%= cn2 - ln2 - 16 - %> unchanged lines hidden (?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= rp1 %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= rp2 %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= type.getAbbrev() %>& @@ -400,7 +400,7 @@ action=download">download diff<% Util.htmlize(file1[j]) %>
<% } %>
--- <%= cn1 - ln1 - 16 - %> unchanged lines hidden (?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= rp1 %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= rp2 %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= type.getAbbrev() %>& @@ -432,7 +432,7 @@ action=download">download diff<% Util.htmlize(file2[j]) %>
<% } %>
--- <%= cn2 - ln2 - 16 - %> unchanged lines hidden (?<%= QueryParameters.REVISION_1_PARAM_EQ %><%= rp1 %>& <%= QueryParameters.REVISION_2_PARAM_EQ %><%= rp2 %>& <%= QueryParameters.FORMAT_PARAM_EQ %><%= type.getAbbrev() %>&