8048691: Spliterator.SORTED characteristics gets cleared for BaseStream.spliterator

Reviewed-by: psandoz, alanb
This commit is contained in:
Viktor Klang 2024-05-07 19:06:36 +00:00
parent 8d78e8cadc
commit f12ed061ae
2 changed files with 28 additions and 2 deletions

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2023, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2024, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -248,6 +248,11 @@ class StreamSpliterators {
c |= (spliterator.characteristics() & (Spliterator.SIZED | Spliterator.SUBSIZED));
}
// It's not allowed for a Spliterator to report SORTED if not also ORDERED
if ((c & Spliterator.SORTED) != 0 && (c & Spliterator.ORDERED) == 0) {
c &= ~(Spliterator.SORTED);
}
return c;
}