--- old/test/jdk/com/sun/jdi/lib/jdb/Jdb.java 2018-10-03 20:25:59.000000000 -0700 +++ new/test/jdk/com/sun/jdi/lib/jdb/Jdb.java 2018-10-03 20:25:58.000000000 -0700 @@ -29,6 +29,7 @@ import java.io.PrintWriter; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collection; import java.util.Collections; import java.util.LinkedList; import java.util.List; @@ -40,9 +41,14 @@ import jdk.test.lib.process.StreamPumper; public class Jdb implements AutoCloseable { + public Jdb(String... args) { + this(Arrays.asList(args)); + } + + public Jdb(Collection args) { ProcessBuilder pb = new ProcessBuilder(JDKToolFinder.getTestJDKTool("jdb")); - pb.command().addAll(Arrays.asList(args)); + pb.command().addAll(args); try { jdb = pb.start(); } catch (IOException ex) { @@ -207,6 +213,10 @@ } public List command(JdbCommand cmd) { + return command(cmd, false); + } + + public List command(JdbCommand cmd, boolean waitForSimplePrompt) { if (!jdb.isAlive()) { if (cmd.allowExit) { // return remaining output @@ -223,7 +233,7 @@ throw new RuntimeException("Unexpected IO error while writing command '" + cmd.cmd + "' to jdb stdin stream"); } - return waitForPrompt(1, cmd.allowExit); + return waitForSimplePrompt ? waitForSimplePrompt(1, cmd.allowExit) : waitForPrompt(1, cmd.allowExit); } public List command(String cmd) {