<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    +1<br>
    <br>
    -Phil.<br>
    <br>
    <div class="moz-cite-prefix">On 3/5/20 7:47 PM, Jayathirth D v
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:A52671D0-B116-43FB-9EED-1CC5FD8D10F2@ORACLE.COM">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      Hi Phil,
      <div class=""><br class="">
      </div>
      <div class="">Thanks for your inputs.</div>
      <div class=""><br class="">
      </div>
      <div class="">Yes we don’t need extra “left > 0” check, I have
        removed it and I have updated the test case to print “Test
        passed”.</div>
      <div class=""><br class="">
      </div>
      <div class="">Please find updated webrev for review:</div>
      <div class=""><a
          href="http://cr.openjdk.java.net/~jdv/6532025/webrev.01/"
          class="" moz-do-not-send="true">http://cr.openjdk.java.net/~jdv/6532025/webrev.01/</a> </div>
      <div class=""><br class="">
      </div>
      <div class="">I ran all imageio jtreg tests and there are no
        failures with updated change.</div>
      <div class=""><br class="">
      </div>
      <div class="">Thanks,</div>
      <div class="">Jay<br class="">
        <div><br class="">
          <blockquote type="cite" class="">
            <div class="">On 06-Mar-2020, at 8:22 AM, Philip Race <<a
                href="mailto:philip.race@oracle.com" class=""
                moz-do-not-send="true">philip.race@oracle.com</a>>
              wrote:</div>
            <br class="Apple-interchange-newline">
            <div class="">
              <meta content="text/html; charset=UTF-8"
                http-equiv="Content-Type" class="">
              <div bgcolor="#FFFFFF" text="#000000" class=""> I don't
                understand why you need to recheck that left > 0.<br
                  class="">
                Nothing can change it between the while loop check and
                your check<br class="">
                <br class="">
                                     while (left > 0) {<br class="">
                                         int nbytes = stream.read(block,
                off, left);<br class="">
                +                        if (nbytes == -1 &&
                left > 0) {<br class="">
                +                            throw new
                IIOException("Invalid block length for " +<br class="">
                +                                    "LZW encoded image
                data");<br class="">
                +                        }<br class="">
                                         off += nbytes;<br class="">
                                         left -= nbytes;<br class="">
                                     }<br class="">
                <br class="">
                Also in the test since you are printing<br class="">
                <meta http-equiv="content-type" content="text/html;
                  charset=UTF-8" class="">
                <pre class="">  51         } catch (IIOException e) {
  52             // do nothing we expect IIOException but we should not
  53             // throw IndexOutOfBoundsException
  54             System.out.println(e.toString());
  55             System.out.println("Caught IIOException ignore it");</pre>
                <br class="">
                Maybe add "Test passed" to be extra clear !<br class="">
                <br class="">
                -phil.<br class="">
                <br class="">
                On 3/5/20, 6:15 PM, Jayathirth D v wrote:
                <blockquote
                  cite="mid:DE688F8F-6F72-4F8F-B024-CA2B754E1394@ORACLE.COM"
                  type="cite" class="">
                  <meta http-equiv="Context-Type" content="text/html;
                    charset=utf-8" class="">
                  Hi Brian,
                  <div class=""><br class="">
                  </div>
                  <div class="">Thanks for the clarification and
                    approval.</div>
                  <div class=""><br class="">
                  </div>
                  <div class="">@Others : Need one more review please
                    take a look.</div>
                  <div class=""><br class="">
                  </div>
                  <div class="">Regards,</div>
                  <div class="">Jay </div>
                  <div class="">
                    <div class=""><br class="">
                      <blockquote type="cite" class="">
                        <div class="">On 06-Mar-2020, at 2:05 AM, Brian
                          Burkhalter <<a moz-do-not-send="true"
                            href="mailto:brian.burkhalter@oracle.com"
                            class="">brian.burkhalter@oracle.com</a>>
                          wrote:</div>
                        <br class="">
                        <div class="">
                          <div class="">Hi Jay,
                            <div class=""><br class="">
                            </div>
                            <div class="">I think the overall change is
                              fine.</div>
                            <div class=""><br class="">
                            </div>
                            <div class="">Regards,</div>
                            <div class=""><br class="">
                            </div>
                            <div class="">Brian<br class="">
                              <div class=""><br class="">
                                <blockquote type="cite" class="">
                                  <div class="">On Mar 5, 2020, at 9:18
                                    AM, Jayathirth D v <<a
                                      moz-do-not-send="true"
                                      href="mailto:JAYATHIRTH.D.V@ORACLE.COM"
                                      class="">JAYATHIRTH.D.V@ORACLE.COM</a>>
                                    wrote:</div>
                                  <br class="">
                                  <div class="">
                                    <div class="">
                                      <div class="">Hello Brian,</div>
                                      <div class=""><br class="">
                                      </div>
                                      <div class="">Thanks for the
                                        review. GIF stream in regression
                                        test case would match warn.gif
                                        stream behaviour that’s why it
                                        going into
                                        GIFImageReader.getCode().</div>
                                      <div class=""><br class="">
                                      </div>
                                      <div class="">Are you okay with
                                        overall webrev.00 patch or have
                                        you just approved GIFImageReader
                                        change? Please clarify.</div>
                                      <div class=""><br class="">
                                      </div>
                                      <div class="">Regards,</div>
                                      <div class="">Jay<br class="">
                                        <div class=""><br class="">
                                          <blockquote type="cite"
                                            class="">
                                            <div class="">On
                                              05-Mar-2020, at 10:20 PM,
                                              Brian Burkhalter <<a
                                                moz-do-not-send="true"
                                                href="mailto:brian.burkhalter@oracle.com"
                                                class="">brian.burkhalter@oracle.com</a>>
                                              wrote:</div>
                                            <br class="">
                                            <div class="">
                                              <div class="">Hello Jay,
                                                <div class=""><br
                                                    class="">
                                                </div>
                                                <div class="">The source
                                                  fix looks OK to me. I
                                                  get the same exception
                                                  as in the bug
                                                  description when I run
                                                  the test against my
                                                  unpatched local JDK 15
                                                  build.</div>
                                                <div class=""><br
                                                    class="">
                                                </div>
                                                <div class="">Thanks,</div>
                                                <div class=""><br
                                                    class="">
                                                </div>
                                                <div class="">Brian</div>
                                                <div class="">
                                                  <div class=""><br
                                                      class="">
                                                    <blockquote
                                                      type="cite"
                                                      class="">
                                                      <div class="">On
                                                        Mar 5, 2020, at
                                                        2:12 AM,
                                                        Jayathirth D v
                                                        <<a
                                                          moz-do-not-send="true"
href="mailto:JAYATHIRTH.D.V@ORACLE.COM" class="">JAYATHIRTH.D.V@ORACLE.COM</a>>
                                                        wrote:</div>
                                                      <br class="">
                                                      <div class="">
                                                        <div class="">Please
                                                          review the
                                                          following fix
                                                          for JDK 15:</div>
                                                        <div class=""><br
                                                          class="">
                                                        </div>
                                                        <div class="">Bug
                                                          : <a
                                                          moz-do-not-send="true"
href="https://bugs.openjdk.java.net/browse/JDK-6532025" class="">https://bugs.openjdk.java.net/browse/JDK-6532025</a></div>
                                                        <div class="">Webrev
                                                          : <a
                                                          moz-do-not-send="true"
href="http://cr.openjdk.java.net/%7Ejdv/6532025/webrev.00/" class="">http://cr.openjdk.java.net/~jdv/6532025/webrev.00/</a> </div>
                                                        <div class=""><br
                                                          class="">
                                                        </div>
                                                        <div class="">Root
                                                          cause : When
                                                          we have
                                                          truncated GIF
                                                          images,
                                                          stream.read()
                                                          returns -1 but
                                                          GIFImageReader
                                                          doesn’t handle
                                                          such
                                                          conditions
                                                          properly and
                                                          continues to
                                                          read input
                                                          stream data.</div>
                                                        <div class="">Solution
                                                          : Handle cases
                                                          where we reach
                                                          EOF and throw
                                                          appropriate
                                                          exception.</div>
                                                      </div>
                                                    </blockquote>
                                                  </div>
                                                  <br class="">
                                                </div>
                                              </div>
                                            </div>
                                          </blockquote>
                                        </div>
                                        <br class="">
                                      </div>
                                    </div>
                                  </div>
                                </blockquote>
                              </div>
                              <br class="">
                            </div>
                          </div>
                        </div>
                      </blockquote>
                    </div>
                    <br class="">
                  </div>
                </blockquote>
              </div>
            </div>
          </blockquote>
        </div>
        <br class="">
      </div>
    </blockquote>
    <br>
  </body>
</html>