RFR: 8241737: TabPaneSkin memory leak on replacing selectionModel

Ambarish Rapte arapte at openjdk.java.net
Mon Apr 13 08:25:39 UTC 2020


`TabPaneSkin` adds a listener to `SelectionModel.selectedItemProperty()` which holds the `SelectionModel` from being
GCed. Fix is to add and remove the listener when a `SelectionModel` is changed.

If the fix looks good, We can change all the `getSkinnable().getSelectionModel()` calls to use the new class member
`selectionModel`.

The fix seems safe to cause any regression. Enabled an ignored test that was added as part of fix for
[JDK-8241455](https://bugs.openjdk.java.net/browse/JDK-8241455).

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

Commit messages:
 - 8241737: TabPaneSkin memory leak on replacing selectionModel

Changes: https://git.openjdk.java.net/jfx/pull/175/files
 Webrev: https://webrevs.openjdk.java.net/jfx/175/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8241737
  Stats: 36 lines in 2 files changed: 26 ins; 9 del; 1 mod
  Patch: https://git.openjdk.java.net/jfx/pull/175.diff
  Fetch: git fetch https://git.openjdk.java.net/jfx pull/175/head:pull/175

PR: https://git.openjdk.java.net/jfx/pull/175


More information about the openjfx-dev mailing list