From 871b98edc34d54ca1a4d93d6c57414254ff902f4 Mon Sep 17 00:00:00 2001 From: Milos Popovic Date: Thu, 16 Jan 2025 16:52:54 +0100 Subject: [PATCH] Fixed referred loop problem in siteStore --- .../mannlib/vedit/controller/OperationController.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/api/src/main/java/edu/cornell/mannlib/vedit/controller/OperationController.java b/api/src/main/java/edu/cornell/mannlib/vedit/controller/OperationController.java index db98ba2a97..044b66adb4 100644 --- a/api/src/main/java/edu/cornell/mannlib/vedit/controller/OperationController.java +++ b/api/src/main/java/edu/cornell/mannlib/vedit/controller/OperationController.java @@ -48,6 +48,9 @@ public class OperationController extends BaseEditController { private static final Log log = LogFactory.getLog(OperationController.class.getName()); + private static final List ignoreReferers = Arrays.asList("/siteStyle", "/uploadImages"); + + public void doPost (HttpServletRequest request, HttpServletResponse response) { @@ -81,6 +84,10 @@ public void doPost (HttpServletRequest request, HttpServletResponse response) { // if we're canceling, we don't need to do anything if (request.getParameter("_cancel") != null){ String referer = epo.getReferer(); + boolean ignoreReferer = ignoreReferers.stream().anyMatch(referer::contains); + if (ignoreReferer) { + referer = null; + } if (referer == null) { try { response.sendRedirect(defaultLandingPage);