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

Reply via email to