diff --git a/pp.A4-HandOverHandLocking/src/main/java/pp/ThreadsafeSimplifiedList.java b/pp.A4-HandOverHandLocking/src/main/java/pp/ThreadsafeSimplifiedList.java index f3f1394..558e13a 100644 --- a/pp.A4-HandOverHandLocking/src/main/java/pp/ThreadsafeSimplifiedList.java +++ b/pp.A4-HandOverHandLocking/src/main/java/pp/ThreadsafeSimplifiedList.java @@ -113,9 +113,12 @@ public class ThreadsafeSimplifiedList throw new IndexOutOfBoundsException(index + " out of bounds"); } - ptr.element = element; - ptr.nodeLock.unlock(); - return element; + try { + ptr.element = element; + return element; + } finally { + ptr.nodeLock.unlock(); + } } /**