RFR: 8312603: ArrayIndexOutOfBoundsException in Marlin when scaleX is 0 [v2]
Karthik P K
kpk at openjdk.org
Mon Jan 29 10:27:39 UTC 2024
On Thu, 25 Jan 2024 17:16:51 GMT, Laurent Bourgès <lbourges at openjdk.org> wrote:
>> Fixed scale=0 in DMarlinPrismUtils + added new test Scale0Test.java
>
> Laurent Bourgès has updated the pull request incrementally with one additional commit since the last revision:
>
> fixed test package
Tested the changes and it fixes the issue as expected.
Left some minor comments inline. I will finish the review soon.
modules/javafx.graphics/src/main/java/com/sun/marlin/ArrayCacheDouble.java line 168:
> 166: if (DO_CLEAN_DIRTY && (toIndex != 0)) {
> 167: // clean-up array of dirty part[fromIndex; toIndex[
> 168: fill(array, fromIndex, toIndex, /*(double)*/ 0.0);
Do you think /*(double)*/ will be helpful? In my opinion, it is not required.
modules/javafx.graphics/src/main/java/com/sun/marlin/ArrayCacheInt.java line 168:
> 166: if (DO_CLEAN_DIRTY && (toIndex != 0)) {
> 167: // clean-up array of dirty part[fromIndex; toIndex[
> 168: fill(array, fromIndex, toIndex, /*(int)*/ 0);
Same as previous comment, /*(int)*/ comment is not required here.
modules/javafx.graphics/src/main/java/com/sun/marlin/ArrayCacheIntClean.java line 171:
> 169: if (toIndex != 0) {
> 170: // clean-up array of dirty part[fromIndex; toIndex[
> 171: fill(array, fromIndex, toIndex, /*(int)*/ 0);
Same as previous comment, /*(int)*/ comment is not required here.
modules/javafx.graphics/src/main/java/com/sun/marlin/DPathConsumer2D.java line 2:
> 1: /*
> 2: * Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
Shouldn't it be 2007, 2024?
modules/javafx.graphics/src/main/java/com/sun/prism/impl/shape/DMarlinPrismUtils.java line 111:
> 109:
> 110: if (Math.abs(det) <= (2.0d * Double.MIN_VALUE)) {
> 111: // this rendering engine takes one dimensional curves and turns
Minor: this -> This
modules/javafx.graphics/src/main/java/com/sun/prism/impl/shape/DMarlinPrismUtils.java line 118:
> 116:
> 117: // Every path needs an initial moveTo and a pathDone. If these
> 118: // are not there this causes a SIGSEGV in libawt.so (at the time
Minor: Add space before so and S can be made capital.
Also wanted to check if libawt usage is correct here?
-------------
PR Review: https://git.openjdk.org/jfx/pull/1348#pullrequestreview-1848155818
PR Review Comment: https://git.openjdk.org/jfx/pull/1348#discussion_r1469276629
PR Review Comment: https://git.openjdk.org/jfx/pull/1348#discussion_r1469277966
PR Review Comment: https://git.openjdk.org/jfx/pull/1348#discussion_r1469279357
PR Review Comment: https://git.openjdk.org/jfx/pull/1348#discussion_r1469322152
PR Review Comment: https://git.openjdk.org/jfx/pull/1348#discussion_r1469352123
PR Review Comment: https://git.openjdk.org/jfx/pull/1348#discussion_r1469351817
More information about the openjfx-dev
mailing list