<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,<br>
      <br>
      Two more things regarding the test<br>
      1. It was pointed out that you are using GPL+CP .. tests just use
      GPL<br>
      2. There's no @bug tag the test. In fact there's no bug ID here at
      all :-)<br>
      <br>
      A bug ID is needed in order to push.<br>
      You have a JBS account now so could have created it yourself ..
      but<br>
      by the time I remembered that I'd already created it for you :-<br>
      <a class="moz-txt-link-freetext" href="https://bugs.openjdk.java.net/browse/JDK-8074587">https://bugs.openjdk.java.net/browse/JDK-8074587</a><br>
      <br>
      But I did assign it to you :-)<br>
      <br>
      -phil.<br>
      <br>
      On 03/06/2015 02:03 PM, Laurent Bourgès wrote:<br>
    </div>
    <blockquote
cite="mid:CAKjRUT7_CgvD66gvTset_PuZu-wU2qV26fB=cyK3TXceiKp2Jw@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>Phil,<br>
          <br>
        </div>
        <div>Here is a new webrev:<br>
          <a moz-do-not-send="true"
            href="http://cr.openjdk.java.net/%7Elbourges/webrev_Path2D_1/">http://cr.openjdk.java.net/~lbourges/webrev_Path2D_1/</a><br>
          <br>
        </div>
        <div>See my comments below:<br>
        </div>
        <div>
          <div>
            <div>
              <div class="gmail_extra">
                <div class="gmail_quote">
                  <blockquote class="gmail_quote" style="margin:0px 0px
                    0px 0.8ex;border-left:1px solid
                    rgb(204,204,204);padding-left:1ex">
                    <div bgcolor="#FFFFFF" text="#000000"><span class="">
                        <blockquote type="cite">
                          <div dir="ltr">
                            <div>
                              <div>
                                <div class="gmail_extra">
                                  <div class="gmail_quote">
                                    <blockquote class="gmail_quote"
                                      style="margin:0px 0px 0px
                                      0.8ex;border-left:1px solid
                                      rgb(204,204,204);padding-left:1ex">
                                      you placed the test in the
                                      java.awt.geom package.<br>
                                      <br>
                                        25 package java.awt.geom;<br>
                                      <br>
                                      and are accessing internals of
                                      that package.<br>
                                      <br>
                                      In jigsaw/modular mode that won't
                                      even compile.<br>
                                    </blockquote>
                                    <div><br>
                                    </div>
                                    <div>Ok it is annoying: <br>
                                      as all Path2D fields are package
                                      protected, I designed the test
                                      using direct access to any fields
                                      ...<br>
                                      <br>
                                    </div>
                                    <blockquote class="gmail_quote"
                                      style="margin:0px 0px 0px
                                      0.8ex;border-left:1px solid
                                      rgb(204,204,204);padding-left:1ex">
                                      <br>
                                      So the test should go in the
                                      anonymous package and avoid
                                      accessing internals.<br>
                                      It should be possible to use just
                                      public API  to verify the arrays 
                                      of a shape<br>
                                      being cloned are trimmed .<br>
                                    </blockquote>
                                    <div><br>
                                    </div>
                                    <div>No, it is not possible to use
                                      Shape API to access arrays nor
                                      fields (numTypes ...): <br>
                                      only getPathIterator() could give
                                      me data but it won't tell me if
                                      the underlying arrays or fields
                                      are correct.<br>
                                    </div>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                        </blockquote>
                        <br>
                      </span> That is true .. <br>
                      <br>
                      Well, if you need it to be in java.awt.geom, I
                      think even today you'll find it won't work<br>
                      unless you jump through some jtreg hoops to
                      install it on the bootclasspath.<br>
                      I think its something like "@run main/othervm
                      -Xbootclasspath/a:. "<br>
                      And later in the modular JDK it will need to be
                      modified again.<br>
                      <br>
                      I'd say either update the test to work with jtreg
                      today - and test it to be sure,<br>
                      or provide the test without an @test tag, or with
                      an @ignore tag, so people can<br>
                      still manually verify it but the harness won't run
                      it.<span class=""><br>
                      </span></div>
                  </blockquote>
                  <div><br>
                  </div>
                  <div>
                    <div>I removed the @test tag but added comments
                      indicating to run the test manually.<br>
                    </div>
                  </div>
                  <blockquote class="gmail_quote" style="margin:0px 0px
                    0px 0.8ex;border-left:1px solid
                    rgb(204,204,204);padding-left:1ex">
                    <div bgcolor="#FFFFFF" text="#000000"><span class="">
                        <br>
                        <blockquote type="cite">
                          <div dir="ltr">
                            <div>
                              <div>
                                <div class="gmail_extra">
                                  <div class="gmail_quote">
                                    <div><br>
                                    </div>
                                    <div>Maybe I could use introspection
                                      to getDeclaredField(name) and
                                      setAccessible(true) to get
                                      internal data.<br>
                                    </div>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                        </blockquote>
                        <br>
                      </span> That won't work either. So maybe this is a
                      "noreg-hard" or "noreg-cleanup" bug.<br>
                      We add those labels to the JBS/JIRA bug when
                      something isn't testable.<span class=""><br>
                      </span></div>
                  </blockquote>
                  <div><br>
                  </div>
                  <div>Nevermind. <br>
                    <br>
                  </div>
                  <blockquote class="gmail_quote" style="margin:0px 0px
                    0px 0.8ex;border-left:1px solid
                    rgb(204,204,204);padding-left:1ex">
                    <div bgcolor="#FFFFFF" text="#000000"><span class="">
                        <br>
                        <blockquote type="cite">
                          <div dir="ltr">
                            <div>
                              <div>
                                <div class="gmail_extra">
                                  <div class="gmail_quote">
                                    <div>Any idea or utility class I
                                      could use </div>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                        </blockquote>
                        <br>
                      </span>
                      <blockquote type="cite">
                        <div dir="ltr">
                          <div>
                            <div>
                              <div class="gmail_extra">
                                <div class="gmail_quote">
                                  <blockquote class="gmail_quote"
                                    style="margin:0px 0px 0px
                                    0.8ex;border-left:1px solid
                                    rgb(204,204,204);padding-left:1ex">
                                    <br>
                                    <span class=""> Why is it necessary
                                      to explicitly add the call to
                                      super(); ?<br>
                                      <br>
                                      223             super();<br>
                                    </span></blockquote>
                                  <span class="">
                                    <div><br>
                                    </div>
                                    <div>I agree it is not necessary but
                                      it explicitely says that I use the
                                      empty constructor:<br>
                                      <span
                                        style="font-family:monospace,monospace"><br>
                                            /**<br>
                                             * Constructs a new empty
                                        {@code Path2D} object.<br>
                                             * It is assumed that the
                                        package sibling subclass that is<br>
                                             * defaulting to this
                                        constructor will fill in all
                                        values.<br>
                                             *<br>
                                             * @since 1.6<br>
                                             */<br>
                                            /* private protected */<br>
                                            Path2D() {<br>
                                            }</span><br>
                                    </div>
                                  </span></div>
                              </div>
                            </div>
                          </div>
                        </div>
                      </blockquote>
                      <br>
                      If we all did this, all of the time, there'd be a
                      lot of extra lines in the code, that the compiler<br>
                      would fill in for us anyway.<br>
                    </div>
                  </blockquote>
                  <div><br>
                    I removed the superfluous super() calls.<br>
                    <br>
                  </div>
                  <div>Thanks for your review,<br>
                    <br>
                  </div>
                  <div>Laurent</div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>