ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/main/java/util/concurrent/CopyOnWriteArraySet.java
(Generate patch)

Comparing jsr166/src/main/java/util/concurrent/CopyOnWriteArraySet.java (file contents):
Revision 1.49 by jsr166, Mon Feb 18 01:30:24 2013 UTC vs.
Revision 1.50 by dl, Mon Feb 25 17:59:40 2013 UTC

# Line 12 | Line 12 | import java.util.AbstractSet;
12   import java.util.Iterator;
13   import java.util.stream.Stream;
14   import java.util.Spliterator;
15 + import java.util.Spliterators;
16   import java.util.stream.Streams;
17  
18   /**
# Line 254 | Line 255 | public class CopyOnWriteArraySet<E> exte
255       * @see #add(Object)
256       */
257      public boolean addAll(Collection<? extends E> c) {
258 <        return al.addAllAbsent(c) > 0;
258 >        if (c instanceof Set)
259 >            return al.addAll(c);
260 >        else
261 >            return al.addAllAbsent(c) > 0;
262      }
263  
264      /**
# Line 361 | Line 365 | public class CopyOnWriteArraySet<E> exte
365      }
366  
367      Spliterator<E> spliterator() {
368 <        return Collections.arraySnapshotSpliterator
368 >        return Spliterators.spliterator
369              (al.getArray(), Spliterator.IMMUTABLE |
370               Spliterator.DISTINCT | Spliterator.ORDERED);
371      }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines