RFR: 8372609: Bug4944439 does not enforce locale correctly
Justin Lu
jlu at openjdk.org
Mon Dec 1 18:20:13 UTC 2025
On Thu, 27 Nov 2025 02:04:15 GMT, Jaikiran Pai <jpai at openjdk.org> wrote:
>> This PR fixes a test bug where a `DecimalFormat` is instantiated in a static field (with the current default locale) before the test updates the system default to `Locale.US`. As a result, it may fail under various other locales, since a `Locale.US` configured `DecimalFormat` is not actually retrieved and the test expects one.
>>
>> In general, the preservation and restoring of the system locale is an obsolete process. The test is instead updated to just retrieve a `DecimalFormat` using a locale accepting factory method.
>>
>> I have manually confirmed that the tests passes with `-Duser.language=en -Duser.country=NL` on my machine, (which is the locale used in the reproducer).
>
> Hello Justin, the change looks reasonable to me. I'm guessing the call to `NumberFormat.getInstance(...)` would still return and exercise a `DecimalFormat` instance, and thus the original intent of the test for JDK-4944439 would be preserved?
@jaikiran Yes, `NumberFormat.getInstance` returns a plain `DecimalFormat` instance, so the original intent should remain the same.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/28514#issuecomment-3598140797
More information about the core-libs-dev
mailing list