commit | 6b73a19165f47cd767b060aa616bc877b5fc2d99 | [log] [tgz] |
---|---|---|
author | Leo Ufimtsev <lufimtse@redhat.com> | Wed Apr 04 09:41:20 2018 -0400 |
committer | Leo Ufimtsev <lufimtse@redhat.com> | Wed Apr 04 15:11:40 2018 -0400 |
tree | 2e9bc7522364a0d4b671f9e377a11c6544e77459 | |
parent | 6821d31b9c58db30d37d7b468419a72377bda431 [diff] |
Bug 530678 [webkit2] UI hangs after navigating through Javadoc hover, when clicking an icon or link to an image. TL;DR: Fix for bug. Details: Clicking on a javadoc like below, (after 2 or 3 times), breaks javadoc. /** <a href="https://bugs.eclipse.org/bugs/attachment.cgi?id=272647">Screenshot</a> */ It un-breaks if you manually kill Webkit* processes. I.e, Webkit process deadlocks if Browser is disposed in the middle of a callback. The fix is to delay disposal until callback is completed. This is achived by leaving a dangling reference until next display loop is executed. This also fixes the bug: 494158 - [Webkit1][Webkit2] JVM crash when javadoc hover has <embed> tags. In addition, I'm adding a jUnit to verify that the fix hasn't introduced memory leaks. (E.g if object is not unreferenced, then one can observe a memory leak. So by extension this fix does not introduce a memory leak since the test passes). (Note, it's not added to be ran automatically becaues it takes 5+ minutes to run). Tests & verification: (gtk3.22, Webkit2.18). - jUnit: AllTests - Child Eclipse opens external links (multiple times) in javadoc correctly. - Various Browser Snippets. - Test_Memory_leak.test_Browser(). https://bugs.eclipse.org/bugs/show_bug.cgi?id=530678 Change-Id: I2a0f0f7e2b44bce67a1212bfa4205561942e59de Signed-off-by: Leo Ufimtsev <lufimtse@redhat.com>
Thanks for your interest in this project.
See the following description for how to contribute a feature or a bug fix to SWT.
Information regarding source code management, builds, coding standards, and more and be found under the following link.
Before your contribution can be accepted by the project, you need to create and electronically sign the Eclipse Foundation Contributor License Agreement (CLA).
Contact the project developers via the project's “dev” list.
This project uses Bugzilla to track ongoing development and issues.
Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!