[OpenJDK 2D-Dev] RFR: 7018932 : Drawing very large coordinates with a dashed Stroke can cause Java to hang [v4]
Laurent Bourgès
lbourges at openjdk.java.net
Sun Jan 10 21:00:17 UTC 2021
> This is my fix proposal to this bug:
> - added new method strokeTo(... Region clip ...) in the abstract RenderingEngine class
> - fixed all RenderingEngine implementations in java.desktop module
> - MarlinRenderingEngine now uses the clip region to roughly & quickly clip the given shape in strokeTo(clip)
> - LoopPipe.getStrokeSpans() uses the new strokeTo(clip) method to get good performance with huge dashed shapes.
>
> I wrote a new test class to validate the bug fix.
Laurent Bourgès has updated the pull request incrementally with one additional commit since the last revision:
Fixed RenderingEngine.strokeTo(clip) to call by default former method.
Fixed CurveClipSplitter (float) to use double-precision for higher
accuracy.
Improved StrokedLineTest to use only bufferedimage rendering.
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/2013/files
- new: https://git.openjdk.java.net/jdk/pull/2013/files/4df9ab38..3ae23d94
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2013&range=03
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2013&range=02-03
Stats: 216 lines in 4 files changed: 74 ins; 112 del; 30 mod
Patch: https://git.openjdk.java.net/jdk/pull/2013.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/2013/head:pull/2013
PR: https://git.openjdk.java.net/jdk/pull/2013
More information about the 2d-dev
mailing list