> This PR addresses an edge case where the `Locale.LanguageRange(String, > double)` constructor accepts `Double.NaN` as a weight. A `LanguageRange` > weight is specified by > https://datatracker.ietf.org/doc/html/rfc2616#section-3.9 and must be between > 0.0 and 1.0, inclusive. The existing bounds checks do not handle this case. > This change adds an explicit `Double.isNaN(weight)` check. > > The issue does not affect parsed range strings in the same way, since the > input is normalized to lower case before parsing and `"nan"` is not accepted > by `Double.parseDouble`. However, I added a test for that case as well, since > one did not previously exist. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai).
Justin Lu has updated the pull request incrementally with one additional commit since the last revision: Review: new IAE wording. Mention more examples in implNote ------------- Changes: - all: https://git.openjdk.org/jdk/pull/31697/files - new: https://git.openjdk.org/jdk/pull/31697/files/176ec650..8d3d8be4 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=31697&range=03 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=31697&range=02-03 Stats: 21 lines in 2 files changed: 6 ins; 1 del; 14 mod Patch: https://git.openjdk.org/jdk/pull/31697.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/31697/head:pull/31697 PR: https://git.openjdk.org/jdk/pull/31697
