diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index 38ab02e0a9e..ef39bb54416 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -59,12 +59,12 @@ #include "fakevimtr.h" #include +#include #include #include #include #include -#include #include #include #include @@ -866,17 +866,10 @@ static QString fromLocalEncoding(const QByteArray &data) static QString getProcessOutput(const QString &command, const QString &input) { - QProcess proc; -#if QT_VERSION >= QT_VERSION_CHECK(5,15,0) - QStringList arguments = QProcess::splitCommand(command); - QString executable = arguments.takeFirst(); - proc.start(executable, arguments); -#else - proc.start(command); -#endif - proc.waitForStarted(); - proc.write(toLocalEncoding(input)); - proc.closeWriteChannel(); + Utils::QtcProcess proc; + proc.setCommand(Utils::CommandLine::fromUserInput(command)); + proc.setWriteData(toLocalEncoding(input)); + proc.start(); // FIXME: Process should be interruptable by user. // Solution is to create a QObject for each process and emit finished state.