This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit dd849b10bd85ee98755332479a04013afa969b3a 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 f779d18..e947456 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() { @@ -88,7 +89,12 @@ public class AsyncFileHandler extends FileHandler { if (closed) { return; } - closed = true; + synchronized (closeLock) { + if (closed) { + return; + } + closed = true; + } super.close(); } @@ -97,7 +103,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