changeset 2813:32fd5ea3a6cc

Merge.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Mon, 30 May 2011 15:24:44 +0200
parents d27bdbec3d67 (current diff) 03027a0ef819 (diff)
children 878bbf7dbf31 5526d82388be
files
diffstat 1 files changed, 11 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/debug/CFGPrinterObserver.java	Mon May 30 15:24:26 2011 +0200
+++ b/graal/GraalCompiler/src/com/sun/c1x/debug/CFGPrinterObserver.java	Mon May 30 15:24:44 2011 +0200
@@ -39,8 +39,14 @@
     private C1XCompilation currentCompilation;
     private CFGPrinter cfgPrinter;
     private ByteArrayOutputStream buffer = null;
+    private final OutputStream stream;
 
     public CFGPrinterObserver() {
+        this(CFGPrinter.cfgFileStream());
+    }
+
+    public CFGPrinterObserver(OutputStream stream) {
+        this.stream = stream;
     }
 
     @Override
@@ -96,13 +102,13 @@
 
         cfgPrinter.flush();
 
-        OutputStream cfgFileStream = CFGPrinter.cfgFileStream();
-        if (cfgFileStream != null) {
-            synchronized (cfgFileStream) {
+        if (stream != null) {
+            synchronized (stream) {
                 try {
-                    cfgFileStream.write(buffer.toByteArray());
+                    stream.write(buffer.toByteArray());
+                    stream.flush();
                 } catch (IOException e) {
-                    TTY.println("WARNING: Error writing CFGPrinter output for %s to disk: %s", event.getMethod(), e);
+                    TTY.println("WARNING: Error writing CFGPrinter output for %s: %s", event.getMethod(), e);
                 }
             }
         }