<i18n dev> RFR: 8350646: Calendar.Builder.build() Throws ArrayIndexOutOfBoundsException
Chen Liang
liach at openjdk.org
Wed Feb 26 00:16:01 UTC 2025
On Tue, 25 Feb 2025 23:58:21 GMT, Justin Lu <jlu at openjdk.org> wrote:
> Please review this PR which prevents an `AIOOBE` from leaking out when `java.util.Calendar.Builder` is used to build a Japanese calendar with an era value too large.
>
> Note that we don't check under `BEFORE_MEIJI`/0 as historically Japanese calendar ignores negative values during normalization. See `JapaneseImperialCalendar` L2018: `date.setEra(era > 0 ? eras[era] : null);`.
>
> We also check against `eras.length` over `REIWA`/5 due to the possibility of additional eras via the property override. (Which ensures `SupplementalJapaneseEraTestRun.java` passes, which also tests against building (and succeeding) with an era value of 6.
This appears to be a behavioral change and warrants a CSR.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/23789#issuecomment-2683573479
More information about the i18n-dev
mailing list