diff --git a/spring-core/src/main/java/org/springframework/util/concurrent/SettableListenableFuture.java b/spring-core/src/main/java/org/springframework/util/concurrent/SettableListenableFuture.java index 411419f6c94..1b19a672bc1 100644 --- a/spring-core/src/main/java/org/springframework/util/concurrent/SettableListenableFuture.java +++ b/spring-core/src/main/java/org/springframework/util/concurrent/SettableListenableFuture.java @@ -169,7 +169,9 @@ public class SettableListenableFuture implements ListenableFuture { private boolean checkCompletingThread() { boolean check = (this.completingThread == Thread.currentThread()); - this.completingThread = null; // only first check actually counts + if (check) { + this.completingThread = null; // only first match actually counts + } return check; } }