RFR: 8295531: ComboBoxBaseSkin: memory leak when changing skin [v3]

Andy Goryachev angorya at openjdk.org
Fri Dec 2 16:45:16 UTC 2022


> as determined by SkinMemoryLeakTest (remove line 166) and a leak tester
> https://github.com/andy-goryachev-oracle/Test/blob/main/src/goryachev/apps/LeakTest.java
> 
> Affected skins:
> - ColorPicker
> - DatePicker
> - ComboBox
> 
> caused by:
> - out-of-order modification of the control property (skin.install)
> - adding skin nodes and not removing them in dispose()
> - adding listeners and not removing them in dispose()
> 
> NOTE: the fix will require not only ListenerHelper [JDK-8294809](https://bugs.openjdk.org/browse/JDK-8294809) but also Skin.install() [JDK-8290844](https://bugs.openjdk.org/browse/JDK-8290844) changes.

Andy Goryachev has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 54 commits:

 - Merge remote-tracking branch 'origin/master' into
   8295531.color.picker.skin
 - Merge remote-tracking branch 'origin/master' into
   8295531.color.picker.skin
 - Merge remote-tracking branch 'origin/master' into
   8295531.color.picker.skin
 - Merge remote-tracking branch 'origin/master' into 8295531.color.picker.skin
 - 8295531: whitespace
 - 8295531: selection model leak
 - Merge branch '8294809.listener.helper' into 8295531.color.picker.skin
 - 8294809: generics
 - Merge branch '8294809.listener.helper' into 8295531.color.picker.skin
 - 8294809: is alive
 - ... and 44 more: https://git.openjdk.org/jfx/compare/6ab65a96...735b2d53

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

Changes: https://git.openjdk.org/jfx/pull/922/files
 Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=922&range=02
  Stats: 185 lines in 6 files changed: 82 ins; 44 del; 59 mod
  Patch: https://git.openjdk.org/jfx/pull/922.diff
  Fetch: git fetch https://git.openjdk.org/jfx pull/922/head:pull/922

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


More information about the openjfx-dev mailing list