Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8211435

Exception in thread "AWT-EventQueue-1" java.lang.IllegalArgumentException: null source

    XMLWordPrintable

Details

    • b20

    Backports

      Description

        In the DefaultKeyboardFocusManager class we have a special field "activeWindow", which stores the currently active window. It is used in two similar cases:
          1. If the java window gets "WINDOW_ACTIVATED" event it will try to send "WINDOW_DEACTIVATED" to the old active window, which is stored in the "activeWindow" field.
          2. If the java component lost the focus, and the opposite component is not a java component, then it will try to send "WINDOW_DEACTIVATED" to the old active window, which is stored in the "activeWindow" field.

        The difference in these two cases is that in "case 1" we check the old active window to null[1], and the second case has no such check. The bug is reproduced in non-standalone mode, when we have a few Appcontexts and this field might be updated by different EDT in parallel.

        Note that the test is for OSX only, because of another bug: JDK-8204142[2]

        [1] http://hg.openjdk.java.net/jdk/jdk/file/ad9077f044be/src/java.desktop/share/classes/java/awt/DefaultKeyboardFocusManager.java#l527
        [2] https://bugs.openjdk.java.net/browse/JDK-8204142

        Attachments

          Issue Links

            Activity

              People

                serb Sergey Bylokhov
                shadowbug Shadow Bug
                Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: