Hi Phil, Thank you so much for your reviewing.
Yes, "family" part can be removed with a few changes in "src/java.desktop/unix/classes/sun/awt/FcFontManager.java". The updated webrev is: http://cr.openjdk.java.net/~tnakamura/8219901/webrev.01/ > So you don't need to clean everything - just your develop -internal > and -ea folders. Yes, thank you for the clarification. Thanks, Toshio Nakamura Philip Race <[email protected]> wrote on 2019/03/10 18:05:18: > From: Philip Race <[email protected]> > To: Toshio 5 Nakamura <[email protected]> > Cc: 2d-dev <[email protected]> > Date: 2019/03/10 18:05 > Subject: Re: [OpenJDK 2D-Dev] [13] JDK-8219901: Noto fonts for East > Asian countries cannot belong to CompositeFont > > I can sponsor this but first : > > You seem to have made "family" redundant but aren't removing it. > There's no point in writing it out if nothing uses it on reading. > So we should remove it unless you can explain why you think it should be kept. > > I don't think this (removing it) is a problem for backports or > compatibility of the > format since release name is part of the file name where we write > the information, > and such a file name will necessarily be a consequence of a feature > or update release > containing this fix. > > Where it might be an issue is testing on 13-ea builds since they all report > that as the version string so for testing you may need to clean out your > ~/.java/fonts/13-ea folder. The same is for your 13-internal private builds. > > I think this is your point when you wrote :- > >> The cached font list is stored under ~/.java/fonts directory. >> We should delete it before applying the fix. > > So you don't need to clean everything - just your develop -internal > and -ea folders. > > Meanwhile I tested it .. and it seemed OK but I am still trying to join > up all the dots to make sure it is all correct code-wise. > > -phil > > On 2/28/19, 3:21 PM, Toshio 5 Nakamura wrote: > Hi, > > Could you review the fix and may I have a sponsor for it? > > Bug: https://bugs.openjdk.java.net/browse/JDK-8219901 > Webrev: http://cr.openjdk.java.net/~tnakamura/8219901/webrev.00/ > > Issue: > Even if Google Noto fonts[1] were installed and listed by fontconfig library > on Linux, CompositeFont couldn't contain it. > > Fix description: > "src/java.desktop/share/classes/sun/font/CompositeFont.java" (l. 296) > validates the target font by comparing names. But, the current code > compared FamilyName with FullName (Font.getFontName()). > Then, Noto font was treated as invalid. > "src/java.desktop/unix/classes/sun/font/FcFontConfiguration.java" > should provide FullName. > > The cached font list is stored under ~/.java/fonts directory. > We should delete it before applying the fix. > > This fix is possible to change the default font, if CompositeFont > is used (especially under Ubuntu18.04 and East Asian settings). > But, I believe the fixed behavior is correct. > > [1] https://www.google.com/get/noto/ > > Thanks, > Toshio Nakamura
