RFR: 8299255: Unexpected round errors in FreetypeFontScaler [v2]

Toshio Nakamura tnakamura at openjdk.org
Sat Dec 24 14:30:09 UTC 2022


On Fri, 23 Dec 2022 06:33:25 GMT, Toshio Nakamura <tnakamura at openjdk.org> wrote:

>> In 'Java_sun_font_FreetypeFontScaler_createScalerContextNative', 'context->transform.xx' and '.yy' values are sometimes 65535 instead of 65536. There are unintentional double and float conversions. It may be no real harm, but I'd like to fix it.
>> 
>> Problem case:
>> context->transform.xx=**65535** yx=0 xy=0 yy=**65535** ptsz=46.590909 dmat[0]=46.590909 (float)dmat[0]=46.59090**8**
>> 
>> Normal case:
>> context->transform.xx=65536 yx=0 xy=0 yy=65536 ptsz=18.000000 dmat[0]=18.000000 (float)dmat[0]=18.000000
>> 
>> Test: jdk_desktop on Linux x86_64 had no regression issues.
>
> Toshio Nakamura has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Adding a testcase

Thank you for the review.
I confirmed Linux (RHEL9), mac (Ventura), and Windows (Windows Server 2019) with this test and patch.

-------------

PR: https://git.openjdk.org/jdk/pull/11763



More information about the client-libs-dev mailing list