RFR 8023367 Collections.emptyList().sort((Comparator)null) throws NPE
Paul Sandoz
paul.sandoz at oracle.com
Tue Aug 20 15:39:25 UTC 2013
Hi,
Please see below for a simple fix to stop throwing an NPE on Collections.emptyList().sort(null);
Paul.
http://hg.openjdk.java.net/lambda/lambda/jdk/rev/67e00b862126
diff -r 3647aab7b1d5 src/share/classes/java/util/Collections.java
--- a/src/share/classes/java/util/Collections.java Tue Aug 06 14:26:34 2013 +0100
+++ b/src/share/classes/java/util/Collections.java Tue Aug 20 17:38:16 2013 +0200
@@ -4508,7 +4508,6 @@
}
@Override
public void sort(Comparator<? super E> c) {
- Objects.requireNonNull(c);
}
// Override default methods in Collection
diff -r 3647aab7b1d5 test/java/util/Collection/ListDefaults.java
--- a/test/java/util/Collection/ListDefaults.java Tue Aug 06 14:26:34 2013 +0100
+++ b/test/java/util/Collection/ListDefaults.java Tue Aug 20 17:38:16 2013 +0200
@@ -49,6 +49,7 @@
/**
* @test
+ * @bug 8023367
* @library testlibrary
* @build CollectionAsserts CollectionSupplier
* @run testng ListDefaults
@@ -100,6 +101,7 @@
@DataProvider(name="listProvider", parallel=true)
public static Object[][] listCases() {
final List<Object[]> cases = new LinkedList<>();
+ cases.add(new Object[] { Collections.emptyList() });
cases.add(new Object[] { new ArrayList<>() });
cases.add(new Object[] { new LinkedList<>() });
cases.add(new Object[] { new Vector<>() });
@@ -128,6 +130,11 @@
list.removeIf(null);
fail("expected NPE not thrown");
} catch (NullPointerException npe) {}
+ try {
+ list.sort(null);
+ } catch (Throwable t) {
+ fail("Exception not expected: " + t);
+ }
}
@Test
More information about the core-libs-dev
mailing list