RFR: 8294589: MenuBarSkin: memory leak when changing skin
Jeanette Winzenburg
fastegal at openjdk.org
Mon Oct 3 21:44:13 UTC 2022
On Fri, 30 Sep 2022 16:19:33 GMT, Andy Goryachev <angorya at openjdk.org> wrote:
>> okay, not tested (so treat it as just a wild guess :) - there is this listener on the skinnable's sceneProperty: it's installed only when there's no scene and removed once the scene is set. Without showing, it looks like it's never removed (as it must!)
>>
>> Unrelated: also look at your dispose: it's violating its contract (making SkinDisposeContractTest fail)
>
> Will definitely do! Some tests were failing yesterday, until all is fixed - it's a draft PR :-)
> Thank you so much, @kleopatra
> Perhaps the test is too artificial, something is not being done correctly or exactly as in the real application? Using StageLoader or showControl() hooks up the missing dependencies.
one last time: there is _no_ such thing as a "too artificial" test - a class must _always_ fulfil its contract in whatever valid context. It's not enough to do so for some (or even the majority) of use-cases. Plus: logically, any assumption (like: there are no memory leaks) is invalidated by a single counter-example (like the valid test).
Have a nice weekend, I'm off now :)
-------------
PR: https://git.openjdk.org/jfx/pull/906
More information about the openjfx-dev
mailing list