> This PR fixes the leak in the mac system menu bar.
> 
> Inside the native code, NewGlobalRef is called for the callable.
> Which makes it into a "GC-Root" until DeleteGlobalRef is called.
> 
> The DeleteGlobalRef is never called for the MenuEntry, if it's removed from 
> the menu without removing it's callable.
> This PR adds logic, whether the Menu is inserted. If it's not inserted in a 
> Menu anymore, then DeleteGlobalRef is called, by calling `_setCallback` with 
> the callable "null".
> 
> The unit test verifies, that this bug happened without this change, but no 
> longer happens with this change.

Florian Kirmaier has updated the pull request incrementally with two additional 
commits since the last revision:

 - JDK-8299423
   reverted added newline
 - JDK-8299423
   reverted whitespace change,
   added missing copyright header

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

Changes:
  - all: https://git.openjdk.org/jfx/pull/987/files
  - new: https://git.openjdk.org/jfx/pull/987/files/02d37146..61127b2e

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jfx&pr=987&range=02
 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=987&range=01-02

  Stats: 25 lines in 2 files changed: 24 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jfx/pull/987.diff
  Fetch: git fetch https://git.openjdk.org/jfx pull/987/head:pull/987

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

Reply via email to