# HG changeset patch # User naoto # Date 1532106754 25200 # Node ID 79926aa725f70a1d2e0ea08e51c1971b1e314a51 # Parent e429a304c97d36b57f1c4391cb5c5e4482daf2db 8206886: Java does not set the default format locale correctly on mac10.13 Reviewed-by: rriggs diff -r e429a304c97d -r 79926aa725f7 src/java.base/macosx/native/libjava/java_props_macosx.c --- a/src/java.base/macosx/native/libjava/java_props_macosx.c Fri Jul 20 09:55:15 2018 -0700 +++ b/src/java.base/macosx/native/libjava/java_props_macosx.c Fri Jul 20 10:12:34 2018 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -45,11 +45,22 @@ } #define LOCALEIDLENGTH 128 +#ifndef kCFCoreFoundationVersionNumber10_11_Max +#define kCFCoreFoundationVersionNumber10_11_Max 1299 +#endif char *getMacOSXLocale(int cat) { const char* retVal = NULL; char languageString[LOCALEIDLENGTH]; char localeString[LOCALEIDLENGTH]; + // Since macOS 10.12, there is no separate language selection for + // "format" locale, e.g., date format. Use the preferred language + // for all LC_* categories. + if (kCFCoreFoundationVersionNumber > + kCFCoreFoundationVersionNumber10_11_Max) { + cat = LC_MESSAGES; + } + switch (cat) { case LC_MESSAGES: {