RFR: 8370160: NumericShaper allows illegal ranges

Phil Race prr at openjdk.org
Sat Oct 18 05:12:32 UTC 2025


This is a follow-on to 8365077: java.awt.font.NumericShaper violates equals/hashCode contract

The factory method to construct a contextual shaper from a bitmask will happily store illegal, unspecified bits.
So there are still ways to create instances which violate the contract.

This isn't possible with the enum approach. We should align these two. And we should document it.

Additionally the behaviour of eliminating an value which is of lesser precedence is also something we should specify.

-------------

Commit messages:
 - 8370160

Changes: https://git.openjdk.org/jdk/pull/27884/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=27884&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8370160
  Stats: 17 lines in 2 files changed: 15 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/27884.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/27884/head:pull/27884

PR: https://git.openjdk.org/jdk/pull/27884


More information about the client-libs-dev mailing list