From f9995103023c1a25ad5e0718de914d6a3235fc9a Mon Sep 17 00:00:00 2001 From: kohsuke Date: Wed, 6 Aug 2008 18:16:39 +0000 Subject: [PATCH] fixed data race git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@11286 71c3de6d-444a-0410-be80-ed276b4c234a --- core/src/main/java/hudson/util/RingBufferLogHandler.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/hudson/util/RingBufferLogHandler.java b/core/src/main/java/hudson/util/RingBufferLogHandler.java index db8f67964b..bb99cfe219 100644 --- a/core/src/main/java/hudson/util/RingBufferLogHandler.java +++ b/core/src/main/java/hudson/util/RingBufferLogHandler.java @@ -14,7 +14,7 @@ public class RingBufferLogHandler extends Handler { private int start = 0; private final LogRecord[] records; - private int size = 0; + private volatile int size = 0; public RingBufferLogHandler() { this(256); @@ -44,7 +44,9 @@ public class RingBufferLogHandler extends Handler { return new AbstractList() { public LogRecord get(int index) { // flip the order - return records[(start+(size-(index+1)))%records.length]; + synchronized (RingBufferLogHandler.this) { + return records[(start+(size-(index+1)))%records.length]; + } } public int size() { -- GitLab