This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-io.git

commit ec1e8223913de2b331d1c559355a15bc48720e2f
Author: Gary D. Gregory <garydgreg...@gmail.com>
AuthorDate: Sun May 18 18:06:32 2025 -0400

    Fix SpotBugs AT_STALE_THREAD_WRITE_OF_PRIMITIVE in ProxyInputStream
    
    [ERROR] Medium: Shared primitive variable "closed" in one thread may not
    yield the value of the most recent write from another thread
    [org.apache.commons.io.input.ProxyInputStream] At
    ProxyInputStream.java:[line 233] AT_STALE_THREAD_WRITE_OF_PRIMITIVE
---
 src/changes/changes.xml                                         | 1 +
 src/main/java/org/apache/commons/io/input/ProxyInputStream.java | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 5ed0f9fd1..cf788651b 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -64,6 +64,7 @@ The <action> type attribute can be add,update,fix,remove.
       <action dev="ggregory" type="fix"                due-to="Gary 
Gregory">Fix SpotBugs [ERROR] Medium: Shared primitive variable "atEos" in one 
thread may not yield the value of the most recent write from another thread 
[org.apache.commons.io.input.UnixLineEndingInputStream] At 
UnixLineEndingInputStream.java:[line 120] 
AT_STALE_THREAD_WRITE_OF_PRIMITIVE.</action>
       <action dev="ggregory" type="fix"                due-to="Gary 
Gregory">Fix SpotBugs [ERROR] Medium: Shared primitive variable "atSlashCr" in 
one thread may not yield the value of the most recent write from another thread 
[org.apache.commons.io.input.UnixLineEndingInputStream] At 
UnixLineEndingInputStream.java:[line 124] 
AT_STALE_THREAD_WRITE_OF_PRIMITIVE.</action>
       <action dev="ggregory" type="fix"                due-to="Gary 
Gregory">Fix SpotBugs [ERROR] Medium: Shared primitive variable "atSlashLf" in 
one thread may not yield the value of the most recent write from another thread 
[org.apache.commons.io.input.UnixLineEndingInputStream] At 
UnixLineEndingInputStream.java:[line 125] 
AT_STALE_THREAD_WRITE_OF_PRIMITIVE.</action>
+      <action dev="ggregory" type="fix"                due-to="Gary 
Gregory">Fix SpotBugs [ERROR] Medium: Shared primitive variable "closed" in one 
thread may not yield the value of the most recent write from another thread 
[org.apache.commons.io.input.ProxyInputStream] At ProxyInputStream.java:[line 
233] AT_STALE_THREAD_WRITE_OF_PRIMITIVE.</action>
       <!-- ADD -->
       <action dev="ggregory" type="add" issue="IO-875" due-to="Pierre Baumard, 
Gary Gregory">Add and use 
org.apache.commons.io.file.CountingPathVisitor.accept(Path, 
BasicFileAttributes) #743.</action> 
       <!-- UPDATE -->
diff --git a/src/main/java/org/apache/commons/io/input/ProxyInputStream.java 
b/src/main/java/org/apache/commons/io/input/ProxyInputStream.java
index 85291fd33..8be3f83b0 100644
--- a/src/main/java/org/apache/commons/io/input/ProxyInputStream.java
+++ b/src/main/java/org/apache/commons/io/input/ProxyInputStream.java
@@ -100,7 +100,7 @@ public B setAfterRead(final IOIntConsumer afterRead) {
     /**
      * Tracks whether {@link #close()} has been called or not.
      */
-    private boolean closed;
+    private volatile boolean closed;
 
     /**
      * Handles exceptions.

Reply via email to