RFR: 8262108: SimpleDateFormat formatting broken for sq_MK Locale [v4]

Jaikiran Pai jpai at openjdk.java.net
Thu Apr 15 01:57:01 UTC 2021


> Can I please get a review for this proposed fix for https://bugs.openjdk.java.net/browse/JDK-8262108?
> 
> As noted in a comment in that issue, the bug relates to the return value of `Calendar.getDisplayNames` for the `Calendar.AM_PM` field. The implementation has started returning invalid values for the `AM_PM` field after the "day period" support was added recently in the JDK as part of https://bugs.openjdk.java.net/browse/JDK-8262108.
> 
> The commit here adds a check in the internal implementation of the display name handling logic, to special case the `AM_PM` field and properly convert the display name array indexes (which is an internal detail) to valid values that represent the `AM_PM` calendar field.
> 
> The commit also has a new jtreg test case `CalendarDisplayNamesTest` reproduces this issue and verifies the fix.
> 
> After this fix was introduced, I ran the test in `test/jdk/java/util/Calendar/` and that showed up a failure in an existing test case `NarrowNamesTest`. Looking at that test case, IMO, the current testing in that `NarrowNamesTest` is incorrect and is probably what hid this issue in the first place? To fix this, I have added an additional commit which updates this test case to properly test the `AM_PM` field values.

Jaikiran Pai has updated the pull request incrementally with three additional commits since the last revision:

 - update existing testcase based on review comment
 - Improve code comment to be clear it's only applicable for java.util.Calendar
 - Remove irrelevant setLenient from new testcase

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/3463/files
  - new: https://git.openjdk.java.net/jdk/pull/3463/files/e7194733..607776b3

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=3463&range=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=3463&range=02-03

  Stats: 9 lines in 3 files changed: 1 ins; 3 del; 5 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3463.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3463/head:pull/3463

PR: https://git.openjdk.java.net/jdk/pull/3463


More information about the core-libs-dev mailing list