May be it would be better to fix Jdb.receiveReplyFor to properly handle
all replies like
Field (nsk.jdb.unwatch.unwatch002.unwatch002a.FS1) is null, will be
instance of java.lang.Boolean[1] (id=706):
jdk/com/sun/jdi tests use the following regexp to detect jdb prompt:
"[a-zA-Z0-9_-][a-zA-Z0-9_-]*\[[1-9][0-9]*\] [ >]*$"
(see test/jdk/com/sun/jdi/lib/jdb/Jdb.java or
test/jdk/com/sun/jdi/ShellScaffold.sh)
AFAIR nsk/../Jdb does not use regexp, but I believe it can be updated to
work the same way.
--alex
On 09/20/2018 14:50, Chris Plummer wrote:
This one is a little different than exclude001 in that we don't control
the name of the thread. We know (at least at the moment) that it is
called "main", but that could always change. In general I'm fine with
this fix, but if you have others like it, I'd suggest putting the "main"
thread name in single place, not in each test that cares about it.
Chris
On 9/20/18 10:54 AM, Gary Adams wrote:
The corrupted output has been identified due to the "Boolean[1]"
being misrecognized as a compound prompt.
The proposed fix waits for the correct prompt before
advancing to the next command.
Webrev: http://cr.openjdk.java.net/~gadams/8208471/webrev/
Issue: https://bugs.openjdk.java.net/browse/JDK-8208471
Testing is in progress.