This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit f03933faf8e54ed2b75607ca47200ec2a410ec52 Author: Mark Thomas <ma...@apache.org> AuthorDate: Thu Nov 25 13:50:42 2021 +0000 Improve thread safety of open and close --- java/org/apache/juli/AsyncFileHandler.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/java/org/apache/juli/AsyncFileHandler.java b/java/org/apache/juli/AsyncFileHandler.java index 8176392..a218cc2 100644 --- a/java/org/apache/juli/AsyncFileHandler.java +++ b/java/org/apache/juli/AsyncFileHandler.java @@ -68,6 +68,7 @@ public class AsyncFileHandler extends FileHandler { logger.start(); } + private final Object closeLock = new Object(); protected volatile boolean closed = false; public AsyncFileHandler() { @@ -87,7 +88,12 @@ public class AsyncFileHandler extends FileHandler { if (closed) { return; } - closed = true; + synchronized (closeLock) { + if (closed) { + return; + } + closed = true; + } super.close(); } @@ -96,7 +102,12 @@ public class AsyncFileHandler extends FileHandler { if (!closed) { return; } - closed = false; + synchronized (closeLock) { + if (!closed) { + return; + } + closed = false; + } super.open(); } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org