<AWT Dev> <Awt Dev> [9] Review Request for 8130895: Test javax/swing/system/6799345/TestShutdown.java fails on Solaris11 Sparcv9
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Wed Jul 22 17:20:29 UTC 2015
It is unclear why it is unrelated, the stack trace from the bug:
java.lang.ExceptionInInitializerError
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at sun.awt.AWTAccessor.getKeyboardFocusManagerAccessor(AWTAccessor.java:966)
at
sun.awt.KeyboardFocusManagerPeerImpl.<clinit>(KeyboardFocusManagerPeerImpl.java:46)
at sun.awt.X11.XToolkit.run(XToolkit.java:611)
at sun.awt.X11.XToolkit.run(XToolkit.java:550)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
at java.awt.AWTKeyStroke.getCachedStroke(AWTKeyStroke.java:255)
at java.awt.AWTKeyStroke.getAWTKeyStroke(AWTKeyStroke.java:394)
at java.awt.KeyboardFocusManager.<clinit>(KeyboardFocusManager.java:332)
... 6 more
On 22.07.15 17:09, Semyon Sadetsky wrote:
> Hi Sergey,
>
> From the process point of view it's better to fix the issue you've
> found in another ticket. The failed test is not related to the
> keystrokes caching.
> So I suggest to push this fix as it is and file another JIRA for the
> keystrokes.
>
> --Semyon
>
>
> On 7/22/2015 3:58 PM, Sergey Bylokhov wrote:
>> Hi, Semyon.
>> NPE occurs when we initialize KFM on the Toolkit thread, but this is
>> only a part of the bug, another issue is that we will use cached
>> keystrokes on the toolkit thread. But this keystrokes is bound to the
>> appcontext so we should not use objects which connect to the
>> application on the toolkit thread. This code should be carefully
>> checked to remove appcontext related stuff from the toolkit thread.
>>
>> On 21.07.15 12:40, Semyon Sadetsky wrote:
>>> Hello,
>>>
>>> Please review fix for JDK9:
>>> bug: https://bugs.openjdk.java.net/browse/JDK-8130895
>>> webrev: http://cr.openjdk.java.net/~ssadetsky/8130895/webrev.00/
>>>
>>> realSync() used in the test's TestRunnable class causes events come
>>> to the XAWT event loop but there are no any windows created at the
>>> moment and the system application context is not initialized. This
>>> results in attempt to create the KeyboardFocusManager instance on
>>> the XAWT's thread group during the XEvent dispatching. That in its
>>> turn causes NPE.
>>> The solution: since KeyboardFocusManager should never be
>>> instantiated in the toolkit event loop, the corresponding check was
>>> added.
>>>
>>> --Semyon
>>
>>
>> --
>> Best regards, Sergey.
>
--
Best regards, Sergey.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20150722/581d7e35/attachment.html>
More information about the awt-dev
mailing list