This is an automated email from the ASF dual-hosted git repository. gnodet pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven-resolver.git
commit 5e928d28eb3a1437fae38764753ee9d75f7a49c6 Author: Guillaume Nodet <[email protected]> AuthorDate: Sun Jun 7 09:46:48 2026 +0000 Fix Results — synchronize read methods for visibility The write paths addException() and addCycle() are synchronized but getResult() and getErrorPath() were not, so readers could observe stale data without a happens-before edge from the writer. Make both getter methods synchronized to establish proper visibility guarantees for cross-thread reads. --- .../aether/internal/impl/collect/DependencyCollectorDelegate.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DependencyCollectorDelegate.java b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DependencyCollectorDelegate.java index 988b8e418..d7cf77b23 100644 --- a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DependencyCollectorDelegate.java +++ b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/DependencyCollectorDelegate.java @@ -560,11 +560,11 @@ public abstract class DependencyCollectorDelegate implements DependencyCollector maxCycles = ConfigUtils.getInteger(session, DEFAULT_MAX_CYCLES, CONFIG_PROP_MAX_CYCLES); } - public CollectResult getResult() { + public synchronized CollectResult getResult() { return result; } - public String getErrorPath() { + public synchronized String getErrorPath() { return errorPath; }
