Mirek Hankus created WW-5276: -------------------------------- Summary: Cleanup method of request is not called Key: WW-5276 URL: https://issues.apache.org/jira/browse/WW-5276 Project: Struts 2 Issue Type: Bug Affects Versions: 6.1.1 Reporter: Mirek Hankus
After upgrading to 6.1.1 we have noticed that cleanup method of custom MultiPartRequest is not called by struts. It may be related to [https://github.com/apache/struts/commit/69102e907551a87335231656320c8484072bdecb] as before variable "request" was overwritten with wrapped request and cleanup was called in finally section After this commit new variable is created called "wrappedRequest", but cleanup is called only on original request, and new wrappedRequest is not cleaned up at all. Below is respective code fragment {code:java} HttpServletRequest wrappedRequest = prepare.wrapRequest(request); ActionMapping mapping = prepare.findActionMapping(wrappedRequest, response, true); if (mapping == null) { LOG.trace("Cannot find mapping for {}, passing to other filters", uri); chain.doFilter(request, response); } else { LOG.trace("Found mapping {} for {}", mapping, uri); execute.executeAction(wrappedRequest, response, mapping); } } } } finally { prepare.cleanupRequest(request); }{code} This bug causes a lot of resource problems, and can result in denial of service condition for application (or making application not compliant - as sensitive information is not properly discarded). -- This message was sent by Atlassian Jira (v8.20.10#820010)