<AWT Dev> [7u] Review request for 8061954: 7u76 - deployment warning dialogs do not work on Linux
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Fri Nov 7 13:23:16 UTC 2014
The fix looks fine to me too.
On 07.11.2014 12:20, Anton V. Tarasov wrote:
> On 07.11.2014 13:45, Anton Litvinov wrote:
>> Hello Anton,
>>
>> Thank you for the response. I would just like to clarify one
>> question. Did you approve this version of the fix?
>
> Yes, sure, I approved.
>
> Thanks,
> Anton.
>
>>
>> Thank you,
>> Anton
>>
>> On 11/7/2014 10:48 AM, Anton V. Tarasov wrote:
>>> Hi Anton,
>>>
>>> On 06.11.2014 19:38, Anton Litvinov wrote:
>>>> Hello Anton,
>>>>
>>>> Thank you for the review of the fix. Yes, automatic jtreg
>>>> regression tests from the directories listed in my review request
>>>> were launched.
>>>>
>>>> Debugging of the issue showed that, as you said, AppContext equals
>>>> null, because the thread, on which
>>>> "java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager"
>>>> method is called, belongs to "system" thread group. The thread is
>>>> "AWT-XAWT". And since the root frame of NPE's call stack is "at
>>>> sun.awt.X11.XToolkit.run", it looks like there is nothing wrong in
>>>> the fact that the current thread is "AWT-XAWT". Yes, I agree that
>>>> it is necessary to fix a root cause of the issue, but in current
>>>> NPE deploy thread is not involved.
>>>
>>> Thanks for the clarification. Now it's clear that the original
>>> problem was that we called public client method (Window.isActive) on
>>> the toolkit thread (that is actually obvious from the stack...). And
>>> that's prohibited. The NPE thus was a side effect.
>>>
>>> So, the fix is correct as soon as it eliminates the client calls
>>> from the toolkit thread.
>>>
>>> Regards,
>>> Anton.
>>>
>>>>
>>>> Thank you,
>>>> Anton
>>>>
>>>> On 11/6/2014 4:10 PM, Anton V. Tarasov wrote:
>>>>> Hi Anton,
>>>>>
>>>>> The fix looks fine for me (taking into account you've launched all
>>>>> the focus reg tests).
>>>>>
>>>>> However, I have a concern about the issue itself. As far as I
>>>>> know, any deploy warning dialog should belong to the deploy Thread
>>>>> Group which does have its own AppContext. The only TG which has
>>>>> null AppContext is the system thread group. However, no UI code
>>>>> should be invoked in that TG. Am I right? If so, then it seems to
>>>>> me we should identify and fix the root cause of the issue.
>>>>>
>>>>> What do you think?
>>>>>
>>>>> Regards,
>>>>> Anton.
>>>>>
>>>>> On 31.10.2014 14:39, Anton Litvinov wrote:
>>>>>> Hello,
>>>>>>
>>>>>> Could you please review the following fix for P1 bug.
>>>>>>
>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8061954
>>>>>> Webrev: http://cr.openjdk.java.net/~alitvinov/8061954/webrev.00
>>>>>>
>>>>>> The bug consists in the fact that
>>>>>> "java.lang.NullPointerException" is thrown from
>>>>>> "java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager"
>>>>>> and a button does not get the focus on mouse click, when the
>>>>>> button is located on a warning dialog which is shown during Java
>>>>>> applet loading on Linux OS.
>>>>>>
>>>>>> The solution consists of 2 following parts:
>>>>>> 1. Reversal of the fix for JDK-6993873 in order to resolve this
>>>>>> bug (file "XContentWindow.java").
>>>>>> 2. Backport of only Linux/Solaris parts of the fix for
>>>>>> JDK-6981400 from JDK 8 in order to again resolve JDK-6993873 (the
>>>>>> failing test
>>>>>> "jdk/test/java/awt/Focus/FocusOwnerFrameOnClick/FocusOwnerFrameOnClick.java").
>>>>>>
>>>>>> The next jtreg regression tests were run on JDK 7 without/with
>>>>>> the fix and no new test failures were defined:
>>>>>> jdk/test/java/awt/Focus
>>>>>> jdk/test/java/awt/KeyboardFocusmanager
>>>>>> jdk/test/javax/swing/KeyboardManager
>>>>>> Analogous tests from closed parts of JDK 7.
>>>>>>
>>>>>> Thank you,
>>>>>> Anton
>>>>>
>>>>
>>>
>>
>
--
Best regards, Sergey.
More information about the awt-dev
mailing list