<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hi, Alexander.<br>
      Then the fix looks fine. Thanks!<br>
      <br>
      On 7/17/14 7:02 PM, Alexander Zvegintsev wrote:<br>
    </div>
    <blockquote cite="mid:53C7E577.9040605@oracle.com" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      <div class="moz-cite-prefix">Hi Sergey,<br>
        You are right: UNIXToolkit.unload_gtk() is never called. But it
        will not crash if we call it, somehow gtk-init-check()[1] call
        allows to avoid crash.<br>
        However I want to leave this fix as simple as it is now, since
        gdk_threads_init()[2] should be called prior to
        gtk_init_check(),<br>
        and it is unnecessary<span style="color: rgb(0, 0, 0);
          font-size: 17px; font-style: normal; font-variant: normal;
          font-weight: normal; letter-spacing: normal; line-height:
          normal; text-align: left; text-indent: 0px; text-transform:
          none; white-space: normal; word-spacing: 0px;
          background-color: rgb(255, 255, 255); display: inline !
          important; float: none;"> for a simple version check</span>.<br>
        <br>
        [1] <a moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://developer.gnome.org/gtk2/stable/gtk2-General.html#gtk-init-check">https://developer.gnome.org/gtk2/stable/gtk2-General.html#gtk-init-check</a><br>
        [2]
        <a moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://developer.gnome.org/gdk2/stable/gdk2-Threads.html#gdk-threads-init">https://developer.gnome.org/gdk2/stable/gdk2-Threads.html#gdk-threads-init</a><br>
        <pre class="moz-signature" cols="72">--
Thanks,
Alexander.</pre>
        On 07/17/2014 04:15 PM, Sergey Bylokhov wrote:<br>
      </div>
      <blockquote cite="mid:53C7BE68.3090304@oracle.com" type="cite">Hi,
        Alexander. <br>
        As far as I remember, we have a code, which closes this lib for
        the usual usage of gtk look and feel. Looks like we never call
        it, but if we call it it will cause the same crash? Can you
        investigate that? Thanks. <br>
        <br>
        On 7/16/14 8:56 PM, Alexander Zvegintsev wrote: <br>
        <blockquote type="cite">Hello AWT team, <br>
          <br>
          please review the fix <br>
          <a moz-do-not-send="true" class="moz-txt-link-freetext"
            href="http://cr.openjdk.java.net/%7Eazvegint/jdk/9/8048289/00/">http://cr.openjdk.java.net/~azvegint/jdk/9/8048289/00/</a>
          <br>
          for the issue <br>
          <a moz-do-not-send="true" class="moz-txt-link-freetext"
            href="https://bugs.openjdk.java.net/browse/JDK-8048289">https://bugs.openjdk.java.net/browse/JDK-8048289</a>
          <br>
          <br>
          UIManager.getSystemLookAndFeelClassName() calls
          UNIXToolkit.isNativeGTKAvailable() <br>
          which loads gtk library, checks version, and closes library.
          Thread specific data key is created upon gtk dlopen, <br>
          but this key is not deleted at dlclose. This produces a crash
          at thread termination. <br>
          <br>
          So this fix is a workaround for the glib issue [1], it simply
          doesn't close library. <br>
          Simple case to reproduce this issue written on C is attached
          to [1]. <br>
          <br>
          [1] <a moz-do-not-send="true" class="moz-txt-link-freetext"
            href="https://bugzilla.gnome.org/show_bug.cgi?id=733065">https://bugzilla.gnome.org/show_bug.cgi?id=733065</a>
          <br>
          <br>
        </blockquote>
        <br>
        <br>
      </blockquote>
      <br>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Best regards, Sergey. </pre>
  </body>
</html>