On Thu, 10 Nov 2022 20:11:55 GMT, Andy Goryachev <ango...@openjdk.org> wrote:

>> A race condition exists where a derived color depends on another derived 
>> color which has not been yet defined or processed.  The only side effect of 
>> this condition is a ClassCastException - the color eventually gets resolved.
>> 
>> Solution: initialize the derived color to transparent earlier to suppress 
>> the exception.
>> 
>> This was also a test bug https://bugs.openjdk.org/browse/JDK-8198604
>
> Andy Goryachev has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   8291853: review comments

So this really is not a bug in the CSS parser after all?

modules/javafx.controls/src/main/resources/com/sun/javafx/scene/control/skin/modena/modena.css
 line 360:

> 358:     -fx-cell-focus-inner-border: derive(-fx-selection-bar,30%);
> 359: 
> 360:     /* Cell border color is initialized here to avoid a race condition 
> during initialization */

I would still instead write something like `/**Border color for table cells. 
*/` and _maybe_ link the JDK ticket. But developers looking in modena.css are 
more interested what the variables do than why they are there. But open for 
other opinions

-------------

PR: https://git.openjdk.org/jfx/pull/947

Reply via email to