From 962ee3a49005ccab5eab62f76ab5e87c28657223 Mon Sep 17 00:00:00 2001 From: henryjen Date: Wed, 4 Dec 2013 08:12:11 -0800 Subject: [PATCH] 8029434: Spliterator of Stream returned by BufferedReader.lines() should have NONNULL characteristic Reviewed-by: mduigou --- src/share/classes/java/io/BufferedReader.java | 3 ++- test/java/io/BufferedReader/Lines.java | 14 +++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/share/classes/java/io/BufferedReader.java b/src/share/classes/java/io/BufferedReader.java index 776395e6d..ee9f66a42 100644 --- a/src/share/classes/java/io/BufferedReader.java +++ b/src/share/classes/java/io/BufferedReader.java @@ -587,6 +587,7 @@ public class BufferedReader extends Reader { } } }; - return StreamSupport.stream(Spliterators.spliteratorUnknownSize(iter, Spliterator.ORDERED), false); + return StreamSupport.stream(Spliterators.spliteratorUnknownSize( + iter, Spliterator.ORDERED | Spliterator.NONNULL), false); } } diff --git a/test/java/io/BufferedReader/Lines.java b/test/java/io/BufferedReader/Lines.java index 2e83e1afc..2e35f7588 100644 --- a/test/java/io/BufferedReader/Lines.java +++ b/test/java/io/BufferedReader/Lines.java @@ -23,7 +23,7 @@ /* * @test - * @bug 8003258 + * @bug 8003258 8029434 * @run testng Lines */ @@ -38,6 +38,7 @@ import java.util.Map; import java.util.ArrayList; import java.util.Iterator; import java.util.NoSuchElementException; +import java.util.Spliterator; import java.util.stream.Stream; import java.util.concurrent.atomic.AtomicInteger; import org.testng.annotations.Test; @@ -281,4 +282,15 @@ public class Lines { // Read after EOL assertFalse(it.hasNext()); } + + public void testCharacteristics() { + try (BufferedReader br = new BufferedReader( + new StringReader(""))) { + Spliterator instance = br.lines().spliterator(); + assertTrue(instance.hasCharacteristics(Spliterator.NONNULL)); + assertTrue(instance.hasCharacteristics(Spliterator.ORDERED)); + } catch (IOException ioe) { + fail("Should not have any exception."); + } + } } -- GitLab