<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    I would like to get a couple of code reviews for the changes at
    <a class="moz-txt-link-freetext" href="http://cr.openjdk.java.net/~bharadwaj/8005642/webrev">http://cr.openjdk.java.net/~bharadwaj/8005642/webrev</a> that fix the
    segmentation violation.<br>
    <br>
    Dereferencing a null generic MethodDescriptor results in this
    segmentation failure. <br>
    <br>
    The reason for a MethodDescriptor being NULL is as follows: When a
    class that implements an interface with a default method, does not
    itself have a concrete implementation of the default method, we need
    to select the appropriate implementation for the class. The
    selection algorithm walks the superclass + superinterface hierarchy
    as described in
    <a class="moz-txt-link-freetext" href="http://cr.openjdk.java.net/~kamg/default_methods_in_hotspot.txt">http://cr.openjdk.java.net/~kamg/default_methods_in_hotspot.txt</a>.
    This walk involves class resolution which might throw
    ClassCirculatoryError that needs to be recognized. When such a
    situation occurs, ClassDescriptor and MethodDescriptor are NULL.
    Attempting to look up for the default method implementation should
    move on to the next node in the search tree and not continue to
    operate on a NULL MethodDescriptor.<br>
    <br>
    This change adds the needed check for exception.<br>
    <br>
    It also has a small fix to a segmentation violation due to NULL
    pointer access when -XX:+<font color="black">TraceClassLoadingPreorder</font>
    is specified.<br>
    <br>
    Thanks,<br>
    <br>
    Bharadwaj<br>
    <br>
  </body>
</html>