diff --git a/platform/util/src/com/intellij/util/containers/WeakList.java b/platform/util/src/com/intellij/util/containers/WeakList.java index 22890840ba33..100a5a3770fb 100644 --- a/platform/util/src/com/intellij/util/containers/WeakList.java +++ b/platform/util/src/com/intellij/util/containers/WeakList.java @@ -71,6 +71,48 @@ public class WeakList extends UnsafeWeakList { } } + @Override + public T set(int index, T element) { + synchronized (myArray) { + return super.set(index, element); + } + } + + @Override + public int indexOf(Object o) { + synchronized (myArray) { + return super.indexOf(o); + } + } + + @Override + public int lastIndexOf(Object o) { + synchronized (myArray) { + return super.lastIndexOf(o); + } + } + + @Override + public void clear() { + synchronized (myArray) { + super.clear(); + } + } + + @Override + protected void removeRange(int fromIndex, int toIndex) { + synchronized (myArray) { + super.removeRange(fromIndex, toIndex); + } + } + + @Override + public boolean remove(Object o) { + synchronized (myArray) { + return super.remove(o); + } + } + public T remove(int index) { synchronized (myArray) { return super.remove(index);