RFR: 8284184: Crash in GraphicsContextJava::drawLinesForText on https://us.yahoo.com/

Kevin Rushforth kcr at openjdk.java.net
Sat Apr 2 13:58:44 UTC 2022


On Sat, 2 Apr 2022 08:29:43 GMT, Jay Bhaskar <jbhaskar at openjdk.org> wrote:

> Issue: Floating point overflow , when making end point for line drawing as FloatPoint endPoint = startPoint + FloatPoint(widths.last(), 0);
> Solution: traverse widths to calculate end point and increment start point.

I'll take a closer look at this next week. I see that you are reverting back to looping over the `widths` array, which will give a different visual result than the current code for dashed lines (of course, the current code, which was changed in [JDK-8280020](https://bugs.openjdk.java.net/browse/JDK-8280020), could be giving the wrong visual result in addition to causing the arithmetic overflow). Can you explain what the `widths` array represents? I also don't immediately see how this avoids the overflow, but that's another thing I'll look at.

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

PR: https://git.openjdk.java.net/jfx/pull/765


More information about the openjfx-dev mailing list