6877751: test/tools/javac/6627362/T6627362.java fails

Mon, 31 Aug 2009 18:25:00 -0700

author
jjg
date
Mon, 31 Aug 2009 18:25:00 -0700
changeset 394
45301370bc5a
parent 393
4fa458c945ac
child 395
5a72ba18c471

6877751: test/tools/javac/6627362/T6627362.java fails
Reviewed-by: darcy

test/tools/javac/6627362/T6627362.java file | annotate | diff | comparison | revisions
     1.1 --- a/test/tools/javac/6627362/T6627362.java	Mon Aug 31 17:16:52 2009 -0700
     1.2 +++ b/test/tools/javac/6627362/T6627362.java	Mon Aug 31 18:25:00 2009 -0700
     1.3 @@ -75,7 +75,7 @@
     1.4  
     1.5          StringWriter sw = new StringWriter();
     1.6          javap(new PrintWriter(sw, true), jpArgs);
     1.7 -        check(sw.toString(), "//Method java/lang/System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V");
     1.8 +        check(sw.toString(), "// Method java/lang/System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V");
     1.9          callValues();
    1.10      }
    1.11  
    1.12 @@ -86,26 +86,13 @@
    1.13      }
    1.14  
    1.15      void javap(PrintWriter out, String... args) throws Exception {
    1.16 -        // for now, we have to exec javap
    1.17 -        File javaHome = new File(System.getProperty("java.home"));
    1.18 -        if (javaHome.getName().equals("jre"))
    1.19 -            javaHome = javaHome.getParentFile();
    1.20 -        File javap = new File(new File(javaHome, "bin"), "javap");
    1.21 -        String[] cmd = new String[args.length + 1];
    1.22 -        cmd[0] = javap.getPath();
    1.23 -        System.arraycopy(args, 0, cmd, 1, args.length);
    1.24 -        Process p = new ProcessBuilder(cmd).redirectErrorStream(true).start();
    1.25 -        p.getOutputStream().close();
    1.26 -        BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
    1.27 -        String line;
    1.28 -        while ((line = in.readLine()) != null)
    1.29 -            out.println(line);
    1.30 -        int rc = p.waitFor();
    1.31 +        int rc = com.sun.tools.javap.Main.run(args, out);
    1.32          if (rc != 0)
    1.33              throw new Error("javap failed: " + Arrays.asList(args) + ": " + rc);
    1.34      }
    1.35  
    1.36      void check(String s, String require) {
    1.37 +        System.out.println("Checking:\n" + s);
    1.38          if (s.indexOf(require) == -1) {
    1.39              System.err.println("Can't find " + require);
    1.40              errors++;

mercurial