Jumping in here as this change is starting to really confuse me ...
On 24/07/2019 2:41 am, Brian Burkhalter wrote:
On Jul 23, 2019, at 8:27 AM, Brian Burkhalter <brian.burkhal...@oracle.com>
wrote:
On Jul 23, 2019, at 8:20 AM, Alan Bateman <alan.bate...@oracle.com
<mailto:alan.bate...@oracle.com>> wrote:
On 23/07/2019 16:08, Brian Burkhalter wrote:
I don’t see what you mean.
@Override
public void write(byte buf[]) throws IOException {
super.write(buf);
}
Should “trouble” be set and the IOE re-thrown?
super.write(byte[]) will invoke PrintStream overrides write(byte[], int, int)
so IOE won't be thrown (and why the proposed change to the class description
isn't right). The method description is probably the best place to describe the
behavior.
Here is an update which accounts for the foregoing comments.
http://cr.openjdk.java.net/~bpb/8187898/webrev-alt.02/
609 @Override
610 public void write(byte buf[]) throws IOException {
611 super.write(buf, 0, buf.length);
612 }
This is wrong! The whole point of this bug is to ensure that PrintStream
methods honour its contract of NEVER throwing IOException. I mean that
is what the bug synopsis and description are all about!
David
-----
Thanks,
Brian