# HG changeset patch # User smarks # Date 1548283554 28800 # Node ID 339e544d59e31e3b3b2920ae79674826e4e0d4e2 # Parent 7b7df2be6219f6dbe8058f4d5ec01276ff5d5d86 8213432: Better copies of CopiesList Reviewed-by: rriggs, skoivu, ahgross, robm, rhalade, jeff diff -r 7b7df2be6219 -r 339e544d59e3 src/java.base/share/classes/java/util/Collections.java --- a/src/java.base/share/classes/java/util/Collections.java Fri Jul 12 08:40:37 2019 -0700 +++ b/src/java.base/share/classes/java/util/Collections.java Wed Jan 23 14:45:54 2019 -0800 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -26,6 +26,7 @@ package java.util; import java.io.IOException; +import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; import java.lang.reflect.Array; @@ -39,6 +40,7 @@ import java.util.stream.IntStream; import java.util.stream.Stream; import java.util.stream.StreamSupport; +import jdk.internal.access.SharedSecrets; /** * This class consists exclusively of static methods that operate on or return @@ -5163,6 +5165,11 @@ public Spliterator spliterator() { return stream().spliterator(); } + + private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException { + ois.defaultReadObject(); + SharedSecrets.getJavaObjectInputStreamAccess().checkArray(ois, Object[].class, n); + } } /**