<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Some review discussion with Jim is in the bug report comments.<br>
    <br>
    Updated webrev to address the minimal set of issues :<br>
    <a class="moz-txt-link-freetext" href="http://cr.openjdk.java.net/~prr/8177393.1/">http://cr.openjdk.java.net/~prr/8177393.1/</a><br>
    <br>
    -phil.<br>
    <br>
    On 5/18/17, 3:32 AM, Prasanta Sadhukhan wrote:
    <blockquote
      cite="mid:66089a18-dd70-4280-0645-7809f368dfb0@oracle.com"
      type="cite">
      <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
      <p>Looks good to me. [Checked 8080287 also works ok with this
        change]<br>
      </p>
      Regards<br>
      Prasanta<br>
      <div class="moz-cite-prefix">On 5/17/2017 11:14 PM, Phil Race
        wrote:<br>
      </div>
      <blockquote
        cite="mid:94ab2091-34f8-90da-0d4d-f322ff659159@oracle.com"
        type="cite">
        <meta http-equiv="content-type" content="text/html;
          charset=UTF-8">
        Bug: <a moz-do-not-send="true" class="moz-txt-link-freetext"
          href="https://bugs.openjdk.java.net/browse/JDK-8177393">https://bugs.openjdk.java.net/browse/JDK-8177393</a>
        <br>
        Webrev: <a moz-do-not-send="true" class="moz-txt-link-freetext"
          href="http://cr.openjdk.java.net/%7Eprr/8177393/">http://cr.openjdk.java.net/~prr/8177393/</a><br>
        <br>
        I have updated the bug report with a long evaluation and some
        additional<br>
        explanation of the proposed fix. I don't intend to duplicate all
        that here<br>
        so please go read it there. The following is a much briefer
        summary.<br>
        <br>
        We are ending up in medialib native code that cannot interpret
        the Java 2D child raster<br>
        it is handed. The child raster was an attempt to prevent
        rescaling of the alpha channel.<br>
        <br>
        The proposed fix avoids creating that child raster and instead
        creates a LookupOp<br>
        which has an explicit lookup table for the alpha channel that
        does the identity lookup. <br>
        <br>
        The fix has a couple of other updates.<br>
        (1) the "canUseLookupOp()" method now checks that the DataBuffer
        is<br>
        something that the medialib code used by LookupOp can handle.<br>
        This would have fixed the bug by itself although at the expense
        of always<br>
        falling back to slow Java code in RescaleOp. However it is still
        needed in<br>
        case the application itself supplies a child raster.<br>
        <br>
        (2) The slow path in RescaleOp turns out to have the same bug
        that I think<br>
        was seen in some other bug report or fix. It is always
        re-scaling alpha as<br>
        well as colour components. I fixed that too.<br>
        <br>
        Since the fix is entirely confined to RescaleOp any consequences
        - good or bad - are limited.<br>
        <br>
        I ran the few regression tests we have that cover RescaleOp and
        also checked Java2Ddemo.<br>
        <br>
        The commented out cases in the new regression test are to be
        handled under a different bug ID.<br>
        <br>
        -phil.<br>
      </blockquote>
      <br>
    </blockquote>
  </body>
</html>