From 130a55afdc8870d82857a8b29db2c19463d65b35 Mon Sep 17 00:00:00 2001
From: Pawel Polanski <pawel.3.polanski@nokia.com>
Date: Tue, 1 Mar 2011 16:19:17 +0100
Subject: [PATCH] Added CodaDevice::sendRunProcessCommand API

---
 src/shared/symbianutils/codadevice.cpp | 14 ++++++++++++++
 src/shared/symbianutils/codadevice.h   |  6 ++++++
 2 files changed, 20 insertions(+)

diff --git a/src/shared/symbianutils/codadevice.cpp b/src/shared/symbianutils/codadevice.cpp
index 57f09a353a..3dbbe6735b 100644
--- a/src/shared/symbianutils/codadevice.cpp
+++ b/src/shared/symbianutils/codadevice.cpp
@@ -968,6 +968,20 @@ void CodaDevice::sendProcessStartCommand(const CodaCallback &callBack,
     sendCodaMessage(MessageWithReply, ProcessesService, "start", startData, callBack, cookie);
 }
 
+void CodaDevice::sendRunProcessCommand(const CodaCallback &callBack,
+                                       const QString &processName,
+                                       QStringList arguments,
+                                       const QVariant &cookie)
+{
+    QByteArray startData;
+    JsonInputStream startStr(startData);
+    startStr << "" //We don't really know the drive of the working dir
+            << '\0' << processName << '\0' << arguments << '\0'
+            << QStringList() << '\0' // Env is an array ["PATH=value"] (non-standard)
+            << false; // Don't attach debugger
+    sendCodaMessage(MessageWithReply, ProcessesService, "start", startData, callBack, cookie);
+}
+
 void CodaDevice::sendSettingsEnableLogCommand()
 {
 
diff --git a/src/shared/symbianutils/codadevice.h b/src/shared/symbianutils/codadevice.h
index f2e029be91..4d1032c54e 100644
--- a/src/shared/symbianutils/codadevice.h
+++ b/src/shared/symbianutils/codadevice.h
@@ -213,6 +213,12 @@ public:
                                  const QStringList &additionalLibraries = QStringList(),
                                  const QVariant &cookie = QVariant());
 
+    // Just launch a process, don't attempt to attach the debugger to it
+    void sendRunProcessCommand(const CodaCallback &callBack,
+                               const QString &processName,
+                               QStringList arguments = QStringList(),
+                               const QVariant &cookie = QVariant());
+
     // Preferred over Processes:Terminate by TCF TRK.
     void sendRunControlTerminateCommand(const CodaCallback &callBack,
                                         const QByteArray &id,
-- 
GitLab