RFR: 8247546: Pattern matching does not skip correctly over supplementary characters
naoto.sato at oracle.com
naoto.sato at oracle.com
Mon Jul 27 18:51:02 UTC 2020
Hi,
Please review the fix to the following issue:
https://bugs.openjdk.java.net/browse/JDK-8247546
The proposed changeset is located at:
https://cr.openjdk.java.net/~naoto/8247546/webrev.00/
On compiling the regex pattern, the start node is chosen based on the
pattern, i.e, whether it involves supplementary processing or not. On
deciding which implementation to use, surrogates were not taken into
consideration, which leads to the issue in the bug report. The proposed
fix is to make it aware of surrogates, and choose the correct
supplementary-aware implementation for the start node.
Apart from the original issue, there was a bug in Range() method
(Pattern.java:5795), so it is fixed along.
Naoto
More information about the core-libs-dev
mailing list