[OpenJDK 2D-Dev] Please review 7u6 fix for 7124536: [macosx] PrintServiceLookup.lookupDefaultPrintService() return null

Mike Swingler swingler at apple.com
Tue Jun 19 22:37:39 UTC 2012


Currently, JDK 7 uses JRSCopyOSName() so that the difference between "Mac OS X" and "Mac OS X Server" can be distinguished.

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.

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.
>>>> 
>>>> 
>>> 
> 




More information about the 2d-dev mailing list