src/java.base/macosx/native/libjava/java_props_macosx.c
changeset 51169 0058ffa0a922
parent 50410 01e4ddc3c23f
child 52725 c470f977ade8
--- a/src/java.base/macosx/native/libjava/java_props_macosx.c	Thu Jul 19 10:53:38 2018 -0700
+++ b/src/java.base/macosx/native/libjava/java_props_macosx.c	Thu Jul 19 11:15:38 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:
         {