Mike, On 6/19/2012 3:37 PM, Mike Swingler wrote:
Is there a better (standard) way? If it matters at all to distinguish server vs. client ? On Windows we care about server only to decide not to use D3D by default.. but we query standard platform APIs for thatCurrently, JDK 7 uses JRSCopyOSName() so that the difference between "Mac OS X" and "Mac OS X Server" can be distinguished.
and set properties appropriately.
I am recommending the use of .contains("OS X") to more robustly determine if
you are on the OS X platform, and still retain the ability to distinguish between client
and server in cases where it is important to do so.
So does that mean JRSCopyOSName() will change what its reporting ? -phil.
Regards, Mike Swingler Apple Inc. On Jun 19, 2012, at 11:53 AM, Phil Race wrote:On 6/19/2012 11:33 AM, Artem Ananiev wrote:On 6/19/2012 8:49 PM, Phil Race wrote:startsWith("Mac") is what we use in FX and I don't see a problem with it and its surely more reliable to type and efficient than contains("OS X"); If its meant to be targeted to a specific version that could break if there's an OS XI .. And startsWith("Win") is a common pattern. So I don't agree with the advice anyway.startsWith("Mac") vs contains("OS X") was already discussed on the macosx-port-dev alias. The problem with the former is that starting from 10.8, OS name will be just "OS X", without "Mac" prefix. The code in java_props_macosx.c makes me believe we set "os.name" tp the value returned by JRSCopyOSName() from JavaRuntimeSupport framework. Is it possible to get "OS X 10.8" from that function?This sounds like a JDK bug. We really must not let that drive changing the "os.name" property else we are completely at the whim of whatever a platform vendor's marketing dept thinks is the flavour of the day. -phil.Thanks, Artem-phil. On 6/19/2012 9:36 AM, Sergey Bylokhov wrote:Hi,Phil. According to these CR macosx check should be: .contains("OS X"). http://monaco.sfbay.sun.com/detail.jsf?cr=7147461 http://monaco.sfbay.sun.com/detail.jsf?cr=7130404 On 19.06.2012 20:13, Phil Race wrote:7124536: [macosx] PrintServiceLookup.lookupDefaultPrintService() return null http://cr.openjdk.java.net/~prr/7124536.7u6/ -phil.
