On Fri, 28 Aug 2020 05:24:24 GMT, Arun Joseph <ajos...@openjdk.org> wrote:
>> ImageJava.cpp ignores CompositeOperator parameter in drawImage function due >> to which shadow was getting drawn on top of >> actual image. apply given composite operator to graphics context before >> drawing image to fix this issue. another issue >> is into WCGraphicsPrismContext.java. while blending two layers, applying >> state to the destination layer was missed due >> to which image was not getting drawn with right scale in hidpi mode. apply >> state to fix the issue. > > The fix and test looks good. I spent some time this afternoon going over the fix in more detail and doing extensive testing on both Windows and Mac. I believe the fix is good. Both by inspection and by instrumenting the code, there are no race conditions or other problems that I can see. The problem appears to be in the test, or else somewhere in the test harness or the SW pipeline exposed by the test. If I run the new CSSTest in a loop on either Mac or Windows, it will crash intermittently. I then reverted your fix, running the new test (which will throw an expected assertion error), and it still crashes intermittently. My recommendation is to use a system test, similar to what [SVGTest.java](https://github.com/openjdk/jfx/blob/master/tests/system/src/test/java/test/javafx/scene/web/SVGTest.java) does, rather than a unit test in the javafx.web module, which uses `WebPage::paint`. ------------- PR: https://git.openjdk.java.net/jfx/pull/279