src/share/classes/java/util/stream/DoublePipeline.java

Print this page
rev 7633 : 8017513: Support for closeable streams
Reviewed-by:
Contributed-by: brian.goetz@oracle.com

@@ -263,15 +263,16 @@
                         downstream.begin(-1);
                     }
 
                     @Override
                     public void accept(double t) {
+                        try (DoubleStream result = mapper.apply(t)) {
                         // We can do better that this too; optimize for depth=0 case and just grab spliterator and forEach it
-                        DoubleStream result = mapper.apply(t);
                         if (result != null)
                             result.sequential().forEach(i -> downstream.accept(i));
                     }
+                    }
                 };
             }
         };
     }