Index: /trunk/FACT++/src/WindowLog.cc
===================================================================
--- /trunk/FACT++/src/WindowLog.cc	(revision 16880)
+++ /trunk/FACT++/src/WindowLog.cc	(revision 16881)
@@ -51,6 +51,5 @@
         fMuxCout.lock();
 
-        for (unsigned int i=0; i<fBacklog.size(); i++)
-            cout << fBacklog[i];
+        cout.write(fBacklog.data(), fBacklog.size());
         cout.flush();
 
@@ -178,6 +177,4 @@
     // If fWindow is set, output everything to the window, otherwise
     // to cout
-    const string sout = string(fBase, len);
-
     if (!fIsNull)
     {
@@ -186,5 +183,8 @@
             fMuxWindow.lock();
             if (!fIsNull)
+            {
+                const string sout = string(fBase, len);
                 wprintw(fWindow, "%s", sout.c_str());
+            }
             // If the stream got flushed due to a line break
             // reset all attributes
@@ -196,5 +196,5 @@
         {
             fMuxCout.lock();
-            cout << sout;
+            cout.write(fBase, len);// << sout;
             // If the stream got flushed due to a line break
             // reset all attributes
@@ -228,5 +228,5 @@
     }
 
-    fQueueFile.emplace(sout);
+    fQueueFile.emplace(fBase, len);
     /*
     // Output everything also to the log-file
