diff options
Diffstat (limited to 'libjava/java/io/PrintStream.java')
-rw-r--r-- | libjava/java/io/PrintStream.java | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/libjava/java/io/PrintStream.java b/libjava/java/io/PrintStream.java index f13d9f3..f024a69 100644 --- a/libjava/java/io/PrintStream.java +++ b/libjava/java/io/PrintStream.java @@ -238,9 +238,16 @@ public class PrintStream extends FilterOutputStream public PrintStream (OutputStream out, boolean af) { - super ((this.out = (out instanceof BufferedOutputStream - ? (BufferedOutputStream) out - : new BufferedOutputStream(out, 250)))); + super(out); + if (out instanceof BufferedOutputStream) + this.out = (BufferedOutputStream) out; + else + { + this.out = new BufferedOutputStream(out, 250); + /* PrintStream redefines "out". Explicitly reset FilterOutputStream's + * "out" so that they're referring to the same thing. */ + super.out = this.out; + } converter = UnicodeToBytes.getDefaultEncoder(); error = false; auto_flush = af; |