<AWT Dev> [9] Fix for JDK-8159956 : EXCEPTION_ACCESS_VIOLATION in sun.awt.windows.ThemeReader.getThemeMargins
Ajit Ghaisas
ajit.ghaisas at oracle.com
Thu Jul 14 06:52:08 UTC 2016
Thanks Phil.
I have updated the test as discussed. Here is the updated webrev.
http://cr.openjdk.java.net/~aghaisas/8159956/webrev.01/
Regards,
Ajit
From: Philip Race
Sent: Wednesday, July 13, 2016 10:11 PM
To: Ajit Ghaisas
Cc: Semyon Sadetsky; awt-dev at openjdk.java.net
Subject: Re: [9] Fix for JDK-8159956 : EXCEPTION_ACCESS_VIOLATION in sun.awt.windows.ThemeReader.getThemeMargins
This seems fine to me although as mentioned off-line
I think the test could be made to run on all platforms.
-phil.
On 7/11/16, 3:04 AM, Ajit Ghaisas wrote:
Hi,
This is the fix for JVM crash bug.
https://bugs.openjdk.java.net/browse/JDK-8159956
Root Cause :
newInsets() method in java.desktop/windows/native/libawt/windows/ThemeReader.cpp file tries to access AwtToolkit::insetsMID method id.
In awt headless mode, this method id is not initialized. Trying to access it results in JVM crash.
Fix :
Creating an object of 'Insets' class is allowed in awt headless mode. (Refer to existing test - test/java/awt/Insets/HeadlessInsets.java)
AwtToolkit::insetsMID method is a handle to the constructor of Insets class.
The fix for this bug is to Initialize the AwtToolkit::insetsMID even in awt headless mode.
This is achieved by invoking native method initIDs() from Toolkit.java static initializer block - this was avoided in headless mode using a check. I have removed this check.
Webrev :
HYPERLINK "http://cr.openjdk.java.net/%7Eaghaisas/8159956/webrev.00"http://cr.openjdk.java.net/~aghaisas/8159956/webrev.00
Request you to review.
Regards,
Ajit
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20160713/bb2f97a3/attachment.html>
More information about the awt-dev
mailing list