diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2013-10-01 22:43:31 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2013-10-01 22:13:05 +0200 |
commit | 24227514e620111de67d557ba4504229b920fb39 (patch) | |
tree | eb264473db2ed1897595cbbab99a4aa7e7072526 /src/plugins/locator/executefilter.cpp | |
parent | 5a41d179867ff17162cecf1b66c1a939c2db9bb2 (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.cpp | 7 |
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() |