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

 

    Request you to review.

 

Regards,

Ajit

Reply via email to