<AWT Dev> [9] Fix for JDK-8159956 : EXCEPTION_ACCESS_VIOLATION in sun.awt.windows.ThemeReader.getThemeMargins
Semyon Sadetsky
semyon.sadetsky at oracle.com
Thu Jul 14 11:30:24 UTC 2016
Looks good to me.
--Semyon
On 14.07.2016 09:52, Ajit Ghaisas wrote:
>
> Thanks Phil.
>
> I have updated the test as discussed. Here is the updated webrev.
>
> http://cr.openjdk.java.net/~aghaisas/8159956/webrev.01/
> <http://cr.openjdk.java.net/%7Eaghaisas/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 :
>
> http://cr.openjdk.java.net/~aghaisas/8159956/webrev.00
> <http://cr.openjdk.java.net/%7Eaghaisas/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/20160714/d22c309b/attachment-0001.html>
More information about the awt-dev
mailing list