aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/io/PrintStream.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/io/PrintStream.java')
-rw-r--r--libjava/java/io/PrintStream.java13
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;