diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp
index c161c9bad9881f49f5bbe555b27a0f3afe0c734d..90c8c4e9f7d6dc53acf6bfe7dfcbc415b596b0e1 100644
--- a/src/plugins/debugger/debuggerrunner.cpp
+++ b/src/plugins/debugger/debuggerrunner.cpp
@@ -44,6 +44,7 @@
 #include <QtCore/QDebug>
 #include <QtCore/QDir>
 #include <QtCore/QFileInfo>
+#include <QtGui/QTextDocument>
 
 using namespace Debugger::Internal;
 
@@ -140,8 +141,8 @@ void DebuggerRunControl::slotAddToOutputWindow(const QString &prefix, const QStr
 {  
     Q_UNUSED(prefix);
     foreach (const QString &l, line.split('\n'))
-        emit addToOutputWindow(this, prefix + l);
-    //emit addToOutputWindow(this, prefix + line);
+        emit addToOutputWindow(this, prefix + Qt::escape(l));
+    //emit addToOutputWindow(this, prefix + Qt::escape(line));
 }
 
 void DebuggerRunControl::stop()
diff --git a/src/plugins/projectexplorer/abstractprocessstep.cpp b/src/plugins/projectexplorer/abstractprocessstep.cpp
index 09bd73fe7676effdca5524515f2941679b29057a..06b40135c1262da635ecd62f21b5ec24364c7e5f 100644
--- a/src/plugins/projectexplorer/abstractprocessstep.cpp
+++ b/src/plugins/projectexplorer/abstractprocessstep.cpp
@@ -39,6 +39,7 @@
 #include <QtCore/QEventLoop>
 #include <QtCore/QDebug>
 #include <QtCore/QTimer>
+#include <QtGui/QTextDocument>
 
 using namespace ProjectExplorer;
 
@@ -165,7 +166,7 @@ void AbstractProcessStep::run(QFutureInterface<bool> & fi)
 
 void AbstractProcessStep::processStarted()
 {
-    emit addToOutputWindow(tr("<font color=\"#0000ff\">Starting: %1 %2</font>\n").arg(m_command, m_arguments.join(" ")));
+    emit addToOutputWindow(tr("<font color=\"#0000ff\">Starting: %1 %2</font>\n").arg(m_command, Qt::escape(m_arguments.join(" "))));
 }
 
 bool AbstractProcessStep::processFinished(int exitCode, QProcess::ExitStatus status)
@@ -196,7 +197,7 @@ void AbstractProcessStep::processReadyReadStdOutput()
 
 void AbstractProcessStep::stdOut(const QString &line)
 {
-    emit addToOutputWindow(line);
+    emit addToOutputWindow(Qt::escape(line));
 }
 
 void AbstractProcessStep::processReadyReadStdError()
@@ -211,7 +212,7 @@ void AbstractProcessStep::processReadyReadStdError()
 
 void AbstractProcessStep::stdError(const QString &line)
 {
-    emit addToOutputWindow(QLatin1String("<font color=\"#ff0000\">") + line + QLatin1String("</font>"));
+    emit addToOutputWindow(QLatin1String("<font color=\"#ff0000\">") + Qt::escape(line) + QLatin1String("</font>"));
 }
 
 void AbstractProcessStep::checkForCancel()
diff --git a/src/plugins/projectexplorer/applicationrunconfiguration.cpp b/src/plugins/projectexplorer/applicationrunconfiguration.cpp
index ba459d563c1f7338e1f248d207898251d354ad09..30b9a7f7caab9ec98223e647ef13ccd392e9f71b 100644
--- a/src/plugins/projectexplorer/applicationrunconfiguration.cpp
+++ b/src/plugins/projectexplorer/applicationrunconfiguration.cpp
@@ -38,6 +38,7 @@
 #include <projectexplorer/projectexplorerconstants.h>
 
 #include <QtGui/QLabel>
+#include <QtGui/QTextDocument>
 #include <QDebug>
 
 using namespace ProjectExplorer;
@@ -160,7 +161,7 @@ void ApplicationRunControl::slotError(const QString & err)
 
 void ApplicationRunControl::slotAddToOutputWindow(const QString &line)
 {
-    emit addToOutputWindow(this, line);
+    emit addToOutputWindow(this, Qt::escape(line));
 }
 
 void ApplicationRunControl::processExited(int exitCode)