This is an automated email from the ASF dual-hosted git repository. rmaucher pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 30fb66d99f44257fc6a6ccd8648dbc9714eac790 Author: opencode <[email protected]> AuthorDate: Wed Sep 30 16:37:47 2026 +0200 Clamp the max-age value generated by the ExpiresFilter to a minimum of zero to avoid emitting the invalid negative delta-seconds value when the computed expiration time is already in the past --- java/org/apache/catalina/filters/ExpiresFilter.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/java/org/apache/catalina/filters/ExpiresFilter.java b/java/org/apache/catalina/filters/ExpiresFilter.java index 89f73bf376..04f41e5985 100644 --- a/java/org/apache/catalina/filters/ExpiresFilter.java +++ b/java/org/apache/catalina/filters/ExpiresFilter.java @@ -1602,7 +1602,12 @@ public class ExpiresFilter extends FilterBase { Integer.valueOf(response.getStatus()), response.getContentType(), expirationDate)); } - String maxAgeDirective = "max-age=" + ((expirationDate.getTime() - System.currentTimeMillis()) / 1000); + long maxAgeSeconds = (expirationDate.getTime() - System.currentTimeMillis()) / 1000; + if (maxAgeSeconds < 0) { + maxAgeSeconds = 0; + } + + String maxAgeDirective = "max-age=" + maxAgeSeconds; String cacheControlHeader = response.getCacheControlHeader(); String newCacheControlHeader = --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
