diff --git a/src/libs/utils/qtcprocess.cpp b/src/libs/utils/qtcprocess.cpp index d84037ec4e5..f77d186b30b 100644 --- a/src/libs/utils/qtcprocess.cpp +++ b/src/libs/utils/qtcprocess.cpp @@ -540,15 +540,15 @@ bool QtcProcess::readDataFromProcess(int timeoutS, finished = waitForFinished(timeoutS > 0 ? timeoutS * 1000 : -1) || state() == QProcess::NotRunning; // First check 'stdout' - if (d->m_process->bytesAvailable()) { // applies to readChannel() only + const QByteArray newStdOut = readAllStandardOutput(); + if (!newStdOut.isEmpty()) { hasData = true; - const QByteArray newStdOut = d->m_process->readAllStandardOutput(); if (stdOut) stdOut->append(newStdOut); } // Check 'stderr' separately. This is a special handling // for 'git pull' and the like which prints its progress on stderr. - const QByteArray newStdErr = d->m_process->readAllStandardError(); + const QByteArray newStdErr = readAllStandardError(); if (!newStdErr.isEmpty()) { hasData = true; if (stdErr) diff --git a/src/plugins/projectexplorer/devicesupport/localprocesslist.cpp b/src/plugins/projectexplorer/devicesupport/localprocesslist.cpp index bab7615f7fe..33796e3b12d 100644 --- a/src/plugins/projectexplorer/devicesupport/localprocesslist.cpp +++ b/src/plugins/projectexplorer/devicesupport/localprocesslist.cpp @@ -161,7 +161,7 @@ static QMap getLocalProcessDataUsingPs(const QString &column) psProcess.start(); if (psProcess.waitForStarted()) { QByteArray output; - if (psProcess.readDataFromProcess(30000, &output, nullptr, false)) { + if (psProcess.readDataFromProcess(30, &output, nullptr, false)) { // Split "457 /Users/foo.app arg1 arg2" const QStringList lines = QString::fromLocal8Bit(output).split(QLatin1Char('\n')); const int lineCount = lines.size();