aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/locator/executefilter.cpp
diff options
context:
space:
mode:
authorOrgad Shaneh <orgad.shaneh@audiocodes.com>2013-10-01 22:43:31 +0300
committerOrgad Shaneh <orgads@gmail.com>2013-10-01 22:13:05 +0200
commit24227514e620111de67d557ba4504229b920fb39 (patch)
treeeb264473db2ed1897595cbbab99a4aa7e7072526 /src/plugins/locator/executefilter.cpp
parent5a41d179867ff17162cecf1b66c1a939c2db9bb2 (diff)
Locator: Preserve state on stdout/stderr handling in execute filter
Change-Id: I1f4f3cd1711945fd8763cdbf3039056b802cc03d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'src/plugins/locator/executefilter.cpp')
-rw-r--r--src/plugins/locator/executefilter.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/locator/executefilter.cpp b/src/plugins/locator/executefilter.cpp
index efb058a466..c820ab6d90 100644
--- a/src/plugins/locator/executefilter.cpp
+++ b/src/plugins/locator/executefilter.cpp
@@ -140,13 +140,16 @@ void ExecuteFilter::finished(int exitCode, QProcess::ExitStatus status)
void ExecuteFilter::readStandardOutput()
{
QByteArray data = m_process->readAllStandardOutput();
- MessageManager::write(QString::fromLocal8Bit(data));
+ MessageManager::write(QTextCodec::codecForLocale()->toUnicode(data.constData(), data.size(),
+ &m_stdoutState));
}
void ExecuteFilter::readStandardError()
{
+ static QTextCodec::ConverterState state;
QByteArray data = m_process->readAllStandardError();
- MessageManager::write(QString::fromLocal8Bit(data));
+ MessageManager::write(QTextCodec::codecForLocale()->toUnicode(data.constData(), data.size(),
+ &m_stderrState));
}
void ExecuteFilter::runHeadCommand()