<AWT Dev> [13] Review Request: 8215756 Memory leaks in the AWT on macOS

Dmitry Markov dmitry.markov at oracle.com
Thu Jan 3 08:21:04 UTC 2019


Hi Sergey,

Still looks good.

Thanks,
Dmitry

> On 3 Jan 2019, at 01:32, Sergey Bylokhov <Sergey.Bylokhov at oracle.com> wrote:
> 
> Hi, Dmitry.
> Can you please review a simplified version of the fix.
> 
> The "javaPlatformWindow" is declared in AWTWindow.h this way:
>   @property (nonatomic, retain) JNFWeakJObjectWrapper *javaPlatformWindow;
> 
> So it is not necessary to release it manually and just assigned to nil is enough.
> 
> http://cr.openjdk.java.net/~serb/8215756/webrev.01/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTWindow.m.sdiff.html
> 
> 
> On 21/12/2018 10:33, Dmitry Markov wrote:
>> Hi Sergey,
>> The fix looks good to me.
>> Thanks,
>> Dmitry
>>> On 21 Dec 2018, at 00:20, Sergey Bylokhov <sergey.bylokhov at oracle.com> wrote:
>>> 
>>> Hello.
>>> Please review the fix for jdk 13.
>>> 
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8215756
>>> Webrev: http://cr.openjdk.java.net/~serb/8215756/webrev.00
>>> 
>>> Two memory leaks were fixed:
>>> 
>>> - AWTView.m: we should release the NSTrackingArea, usually we do this
>>>       when we change NSTrackingArea from one to another:
>>>       http://hg.openjdk.java.net/jdk/jdk/file/3791fee4df3b/src/java.desktop/macosx/native/libawt_lwawt/awt/AWTView.m#l437
>>>       But we also need to do this when the window is deallocated
>>> - AWTWindow.m: We have a JNFWeakJObjectWrapper which holds the reference to the java object,
>>>       when the window is deallocated we clear the reference to the java object, but
>>>       we also need to release the JNFWeakJObjectWrapper object itself
>>> 
>>> I have checked by the Instruments that the test attached to the bug will not produce any other leaks after the fix.
>>> 
>>> 
>>> -- 
>>> Best regards, Sergey.
> 
> 
> -- 
> Best regards, Sergey.



More information about the awt-dev mailing list