diff --git a/src/plugins/vcsbase/command.cpp b/src/plugins/vcsbase/command.cpp
index 863ce8fee8a1cdc10ffdbd0f4da488556d6e34b0..70856bf9b1f48942e7542f75ca4e4b73956e52d4 100644
--- a/src/plugins/vcsbase/command.cpp
+++ b/src/plugins/vcsbase/command.cpp
@@ -247,7 +247,8 @@ void Command::run()
 
         process->closeWriteChannel();
         const int timeOutSeconds = d->m_jobs.at(j).timeout;
-        if (!Utils::SynchronousProcess::readDataFromProcess(*process, timeOutSeconds * 1000,
+        if (!Utils::SynchronousProcess::readDataFromProcess(*process,
+                                                            timeOutSeconds >= 0 ? timeOutSeconds * 1000 : -1,
                                                             &stdOut, &stdErr, false)) {
             Utils::SynchronousProcess::stopProcess(*process);
             ok = false;