[OpenJDK 2D-Dev] RFR 8144718: Pisces / Marlin Strokers may generate invalid curves with huge coordinates and round joins

Jim Graham james.graham at oracle.com
Tue Dec 15 20:42:12 UTC 2015


On second thought - it would be good to remove the dependency on the 
font from the test case since that can change over time and we'd no 
longer have the regression test we once had...

			...jim

On 12/7/15 5:30 PM, Jim Graham wrote:
> Looks good.
>
>          ...jim
>
> On 12/5/15 8:33 AM, Laurent Bourgès wrote:
>> Jim,
>>
>> here is the updated webrev:
>> http://cr.openjdk.java.net/~lbourges/marlin/Stroker-8144718.1/
>>
>> Changes:
>> - added the comment you proposed
>> - Marlin: use precomputed invHalfLineWidth2Sq = 1f / (2f * lineWidth2 *
>> lineWidth2) for performance
>> - fix copyright date in Pisces Stroker
>>
>> Laurent
>>
>> 2015-12-05 0:00 GMT+01:00 Jim Graham <james.graham at oracle.com
>> <mailto:james.graham at oracle.com>>:
>>
>>     I'd make the test >= 0.5 since 0.5 generates a flat curve as well.
>>
>>     And it couldn't hurt to mention that we are worried about round off
>>     error since someone coming along might wonder why we're worried that
>>     a cos() is > 1:
>>
>>     // check round off errors producing cos(ext) > 1 and a NaN below
>>     // cos(ext) == 1 implies colinear segments and an empty join anyway
>>
>>                      ...jim
>>
>>
>>     On 12/4/15 8:33 AM, Laurent Bourgès wrote:
>>
>>         Hi,
>>
>>         Please review this webrev  fixing the Stroker bug in both
>> Pisces &
>>         Marlin (same changes):
>>         bug: https://bugs.openjdk.java.net/browse/JDK-8144718
>>         webrev:
>>         http://cr.openjdk.java.net/~lbourges/marlin/Stroker-8144718.0/
>>
>>         As this bug is very difficult to reproduce (artefacts), I just
>>         provide a
>>         simple test class that reproduces the issue.
>>
>>         Regards,
>>         Laurent Bourgès
>>
>>
>>
>>
>> --
>> --
>> Laurent Bourgès



More information about the 2d-dev mailing list