diff --git a/src/main/java/io/linuxserver/fleet/web/WebServer.java b/src/main/java/io/linuxserver/fleet/web/WebServer.java index 1908997..533afb9 100644 --- a/src/main/java/io/linuxserver/fleet/web/WebServer.java +++ b/src/main/java/io/linuxserver/fleet/web/WebServer.java @@ -100,6 +100,9 @@ public class WebServer { return () -> before(path, (request, response) -> { + if (response.raw().isCommitted()) + return; + Session session = request.session(false); if (null == session) diff --git a/src/main/java/io/linuxserver/fleet/web/routes/InitialUserFilterRoute.java b/src/main/java/io/linuxserver/fleet/web/routes/InitialUserFilterRoute.java index faf5e7f..6285af3 100644 --- a/src/main/java/io/linuxserver/fleet/web/routes/InitialUserFilterRoute.java +++ b/src/main/java/io/linuxserver/fleet/web/routes/InitialUserFilterRoute.java @@ -23,6 +23,8 @@ import spark.Filter; import spark.Request; import spark.Response; +import static spark.Spark.halt; + /** *
* Forces the maintainer of Fleet to set up an initial user before running Fleet. @@ -51,7 +53,7 @@ public class InitialUserFilterRoute implements Filter { if (databaseAuthenticationEnabled) { if (!initialUserNeedsConfiguring() && "/admin/setup".equals(request.pathInfo())) { - response.redirect("/admin"); + halt(401); } else if (initialUserNeedsConfiguring() && !pathIsExempted(request.pathInfo())) {