Why not just use CFLocale and call CFLocaleCopyCurrent? https://developer.apple.com/library/mac/#documentation/CoreFoundation/Reference/CFLocaleRef/Reference/reference.html#//apple_ref/c/func/CFLocaleCopyCurrent
-DrD- > As to the default locale detection, we need to call JavaRuntimeSupport. > MacOSX's POSIX calls do not return user's preferred language/format settings. > > Naoto > > On 11/14/12 1:59 AM, Alan Bateman wrote: >> On 13/11/2012 22:50, Brent Christian wrote: >>> At present, the JDK port for OS X gets its value for os.name from a >>> JRS function exported by the Apple Java Runtime Support framework. >>> >>> Historically this has either been "Mac OS X", or "Mac OS X Server", >>> but there have been reports that this could change at any time, e.g. >>> to just "OS X". This would break any app that relies on this property >>> to detect the Mac platform using something like: >>> >>> System.getProperty("os.name").startsWith("Mac"). >>> >>> To ensure compatibility going forward, the os.name System property on >>> Mac should be hard-coded to the value that is expected, "Mac OS X". >>> (FWIW, as of 10.7 Mac OS X Server is no longer a separate edition of >>> the OS). >>> >>> Webrev is here: >>> http://cr.openjdk.java.net/~bchristi/7178922/webrev.0/ >>> >>> Note: the setUnknownOSAndVersion() function is unused following my >>> change, so I went ahead and removed it. >>> >>> Thanks, >>> -Brent >> This might be a question for the MacOSX folks but is it safe to continue >> to depend on JavaRuntimeSupport period? I'm just wondering if we really >> need to use it to determine the OS version and locale? >> >> -Alan. >