diff options
Diffstat (limited to 'libjava/classpath/java/util/concurrent/CopyOnWriteArrayList.java')
-rw-r--r-- | libjava/classpath/java/util/concurrent/CopyOnWriteArrayList.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libjava/classpath/java/util/concurrent/CopyOnWriteArrayList.java b/libjava/classpath/java/util/concurrent/CopyOnWriteArrayList.java index 5ef37d94916..48c017f50fa 100644 --- a/libjava/classpath/java/util/concurrent/CopyOnWriteArrayList.java +++ b/libjava/classpath/java/util/concurrent/CopyOnWriteArrayList.java @@ -349,7 +349,8 @@ public class CopyOnWriteArrayList<E> extends AbstractList<E> implements { E[] data = this.data; E[] newData = (E[]) new Object[data.length - 1]; - System.arraycopy(data, 0, newData, 0, index - 1); + if (index > 0) + System.arraycopy(data, 0, newData, 0, index - 1); System.arraycopy(data, index + 1, newData, index, data.length - index - 1); E r = data[index]; |