-
Bug
-
Resolution: Fixed
-
P4
-
8, 11, 13, 14, 15
-
b07
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8246563 | 13.0.4 | Clemens Eisserer | P4 | Resolved | Fixed | b04 |
JDK-8242763 | 11.0.8-oracle | Clemens Eisserer | P4 | Resolved | Fixed | b03 |
JDK-8238754 | 11.0.7 | Clemens Eisserer | P4 | Resolved | Fixed | b03 |
JDK-8239871 | openjdk8u252 | Mario Torre | P4 | Resolved | Fixed | b05 |
There is a problem when rendering huge lines with the XRender pipeline, causing an infinite loop.
The Bresenham renderer in sun/java2d/xr/XRDrawLine.java overflows when calculating the clip coordinates, for example the following code (line 283):
xsteps = 2 * ysteps * ax + ay
Produces the following with the attached test case already during the first passage:
2 * 33535 * 34005 + 34005 = 2280749355
The issue seems to also be present when using the native Bresenham renderer, although I hadn't found a way to exploit this yet.
There is an old related bug describing the same issue but was marked as fixed, so this may be a regression, however the bug does not seem to have a commit in the OpenJDK code base so maybe it was fixed in the closed version only:
https://bugs.openjdk.java.net/browse/JDK-4376103
I can reproduce this problem on all the version I tried so far: 8u, 11u, 13 and latest-dev.
The Bresenham renderer in sun/java2d/xr/XRDrawLine.java overflows when calculating the clip coordinates, for example the following code (line 283):
xsteps = 2 * ysteps * ax + ay
Produces the following with the attached test case already during the first passage:
2 * 33535 * 34005 + 34005 = 2280749355
The issue seems to also be present when using the native Bresenham renderer, although I hadn't found a way to exploit this yet.
There is an old related bug describing the same issue but was marked as fixed, so this may be a regression, however the bug does not seem to have a commit in the OpenJDK code base so maybe it was fixed in the closed version only:
https://bugs.openjdk.java.net/browse/JDK-4376103
I can reproduce this problem on all the version I tried so far: 8u, 11u, 13 and latest-dev.
- backported by
-
JDK-8238754 Infinite loop when rendering huge lines
-
- Resolved
-
-
JDK-8239871 Infinite loop when rendering huge lines
-
- Resolved
-
-
JDK-8242763 Infinite loop when rendering huge lines
-
- Resolved
-
-
JDK-8246563 Infinite loop when rendering huge lines
-
- Resolved
-