segstore.core: Synchronize isEmpty
authorMatthew Khouzam <matthew.khouzam@ericsson.com>
Thu, 26 May 2016 17:13:08 +0000 (13:13 -0400)
committerMatthew Khouzam <matthew.khouzam@ericsson.com>
Wed, 1 Jun 2016 18:16:19 +0000 (14:16 -0400)
This avoids race conditions

Change-Id: Ifb252a4011aed88118b2db8abd6c49be49c0d175
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/73744
Reviewed-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Tested-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-by: Hudson CI
analysis/org.eclipse.tracecompass.analysis.timing.core/src/org/eclipse/tracecompass/internal/analysis/timing/core/store/ArrayListStore.java

index 86c67351ed5b3d0a32cb62b737b9596be09de18d..b0a1638fcc23ad48ef5e266c668f66125faa3868 100644 (file)
@@ -134,7 +134,12 @@ public class ArrayListStore<@NonNull E extends ISegment> implements ISegmentStor
 
     @Override
     public boolean isEmpty() {
-        return fStore.isEmpty();
+        fLock.readLock().lock();
+        try {
+            return fStore.isEmpty();
+        } finally {
+            fLock.readLock().unlock();
+        }
     }
 
     @Override
This page took 0.024114 seconds and 5 git commands to generate.