<AWT Dev> [7u] Review request for 8061954: 7u76 - deployment warning dialogs do not work on Linux
Anton Litvinov
anton.litvinov at oracle.com
Thu Nov 6 15:38:12 UTC 2014
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.
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
>
More information about the awt-dev
mailing list