Skip to content

Commit 4d2360e

Browse files
committed
Defensively ignore multipart parsing failure in case of error dispatch
Issue: SPR-15231 (cherry picked from commit d44325e)
1 parent 4f52174 commit 4d2360e

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

spring-webmvc/src/main/java/org/springframework/web/servlet/DispatcherServlet.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1096,7 +1096,18 @@ else if (hasMultipartException(request) ) {
10961096
"skipping re-resolution for undisturbed error rendering");
10971097
}
10981098
else {
1099-
return this.multipartResolver.resolveMultipart(request);
1099+
try {
1100+
return this.multipartResolver.resolveMultipart(request);
1101+
}
1102+
catch (MultipartException ex) {
1103+
if (request.getAttribute(WebUtils.ERROR_EXCEPTION_ATTRIBUTE) != null) {
1104+
logger.debug("Multipart resolution failed for error dispatch", ex);
1105+
// Keep processing error dispatch with regular request handle below
1106+
}
1107+
else {
1108+
throw ex;
1109+
}
1110+
}
11001111
}
11011112
}
11021113
// If not returned before: return original request.

0 commit comments

Comments
 (0)