--- a/jdk/src/share/classes/java/util/stream/Stream.java Tue Jun 11 13:41:38 2013 -0700
+++ b/jdk/src/share/classes/java/util/stream/Stream.java Fri Jun 28 10:29:21 2013 +0200
@@ -880,14 +880,7 @@
*/
public static<T> Stream<T> generate(Supplier<T> s) {
Objects.requireNonNull(s);
- return StreamSupport.stream(Spliterators.spliteratorUnknownSize(
- new Iterator<T>() {
- @Override
- public boolean hasNext() { return true; }
-
- @Override
- public T next() { return s.get(); }
- },
- Spliterator.ORDERED | Spliterator.IMMUTABLE));
+ return StreamSupport.stream(
+ new StreamSpliterators.InfiniteSupplyingSpliterator.OfRef<>(Long.MAX_VALUE, s));
}
}