diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/BasicServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/BasicServlet.java index 692e9bd6cf..add85a8bbd 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/BasicServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/BasicServlet.java @@ -290,7 +290,7 @@ class BasicServlet extends HttpServlet return true; } response.setStatus(304); - response.flushBuffer(); + response.getOutputStream().close(); return false; } } diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java index f07a956063..aa14b85aca 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java @@ -1370,7 +1370,7 @@ public class I2PSnarkServlet extends BasicServlet { buf.append(p.replace("&", "&")); // no you don't html escape the redirect header resp.setHeader("Location", buf.toString()); resp.setStatus(303); - resp.flushBuffer(); + resp.getOutputStream().close(); } /** @since 0.9 */ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/HostCheckHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/HostCheckHandler.java index 1bcdcee607..b1ff8d8113 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/HostCheckHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/HostCheckHandler.java @@ -183,6 +183,6 @@ public class HostCheckHandler extends GzipHandler // https://w3c.github.io/webappsec-upgrade-insecure-requests/ httpResponse.setHeader("Vary", "Upgrade-Insecure-Requests"); httpResponse.setStatus(307); - httpResponse.flushBuffer(); + httpResponse.getOutputStream().close(); } } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/CodedIconRendererServlet.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/CodedIconRendererServlet.java index af05cca3c0..6ea37b5476 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/CodedIconRendererServlet.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/CodedIconRendererServlet.java @@ -65,7 +65,7 @@ public class CodedIconRendererServlet extends HttpServlet { } } else { srs.setStatus(304); - srs.flushBuffer(); + srs.getOutputStream().close(); } } else { //Binary data is not present but must be substituted by file on disk diff --git a/apps/routerconsole/jsp/dns.jsp b/apps/routerconsole/jsp/dns.jsp index 9ff978dd33..03989c5a7d 100644 --- a/apps/routerconsole/jsp/dns.jsp +++ b/apps/routerconsole/jsp/dns.jsp @@ -9,6 +9,9 @@ if (!testIFrame) { response.setStatus(307); response.setHeader("Location", "/susidns/index"); + // force commitment + response.getOutputStream().close(); + return; } else { %> diff --git a/apps/routerconsole/jsp/graph.jsp b/apps/routerconsole/jsp/graph.jsp index 5255051488..304b8ac35a 100644 --- a/apps/routerconsole/jsp/graph.jsp +++ b/apps/routerconsole/jsp/graph.jsp @@ -24,6 +24,8 @@ // probably because restart or shutdown was clicked response.setStatus(307); response.setHeader("Location", "/graphs"); + // force commitment + response.getOutputStream().close(); return; } %> diff --git a/apps/routerconsole/jsp/i2ptunnelmgr.jsp b/apps/routerconsole/jsp/i2ptunnelmgr.jsp index 8d50b6a383..eacfa13104 100644 --- a/apps/routerconsole/jsp/i2ptunnelmgr.jsp +++ b/apps/routerconsole/jsp/i2ptunnelmgr.jsp @@ -9,6 +9,9 @@ if (!testIFrame) { response.setStatus(307); response.setHeader("Location", "/i2ptunnel/"); + // force commitment + response.getOutputStream().close(); + return; } else { %> diff --git a/apps/routerconsole/jsp/index.jsp b/apps/routerconsole/jsp/index.jsp index deb9343388..b8705c2bb6 100644 --- a/apps/routerconsole/jsp/index.jsp +++ b/apps/routerconsole/jsp/index.jsp @@ -1,6 +1,12 @@ -<%@page contentType="text/plain"%> -<%@page pageEncoding="UTF-8"%> <% +/* + * USE CAUTION WHEN EDITING + * Trailing whitespace OR NEWLINE on the last line will cause + * IllegalStateExceptions !!! + * + * Do not tag this file for translation. + */ + // // Redirect to either /home or /console, depending on configuration, // while preserving any query parameters @@ -24,4 +30,6 @@ if (query != null) buf.append('?').append(query); response.setHeader("Location", buf.toString()); -%> + // force commitment + response.getOutputStream().close(); +%> \ No newline at end of file diff --git a/apps/routerconsole/jsp/torrents.jsp b/apps/routerconsole/jsp/torrents.jsp index 7026d12395..885431765a 100644 --- a/apps/routerconsole/jsp/torrents.jsp +++ b/apps/routerconsole/jsp/torrents.jsp @@ -10,6 +10,9 @@ if (!testIFrame || !embedApp) { response.setStatus(307); response.setHeader("Location", "/i2psnark/"); + // force commitment + response.getOutputStream().close(); + return; } else { %> diff --git a/apps/routerconsole/jsp/webmail.jsp b/apps/routerconsole/jsp/webmail.jsp index 9f00b2c947..6c544bedbf 100644 --- a/apps/routerconsole/jsp/webmail.jsp +++ b/apps/routerconsole/jsp/webmail.jsp @@ -10,6 +10,9 @@ if (!testIFrame || !embedApp) { response.setStatus(307); response.setHeader("Location", "/susimail/susimail"); + // force commitment + response.getOutputStream().close(); + return; } else { %> diff --git a/apps/susimail/src/src/i2p/susi/webmail/WebMail.java b/apps/susimail/src/src/i2p/susi/webmail/WebMail.java index 7d25e25af1..499074d8a3 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/WebMail.java +++ b/apps/susimail/src/src/i2p/susi/webmail/WebMail.java @@ -2297,7 +2297,7 @@ public class WebMail extends HttpServlet buf.append(q.replace("&", "&")); // no you don't html escape the redirect header resp.setHeader("Location", buf.toString()); resp.setStatus(303); - resp.flushBuffer(); + resp.getOutputStream().close(); Debug.debug(Debug.DEBUG, "P-R-G to " + q); }