From 7ff8a6669c9fdf4f2ed78a9757e9a28f484b6699 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Wed, 23 Mar 2016 15:03:12 +0100 Subject: [PATCH] obtain lock for mark tracks before iterating Change-Id: Id4258966b99bc505bed83ca8a1ab7e323bbdecf6 --- .../sap/sailing/gwt/ui/server/SailingServiceImpl.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java index 8aa0618eedb..800a562472d 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/server/SailingServiceImpl.java @@ -6147,8 +6147,13 @@ public class SailingServiceImpl extends ProxiedRemoteServiceServlet implements S */ private Iterable convertToGPSFixDTOTrack(Track track) { final List result = new ArrayList<>(); - for (final GPSFix fix : track.getFixes()) { - result.add(convertToGPSFixDTO(fix)); + track.lockForRead(); + try { + for (final GPSFix fix : track.getFixes()) { + result.add(convertToGPSFixDTO(fix)); + } + } finally { + track.unlockAfterRead(); } return result; }