summaryrefslogtreecommitdiffstats
path: root/installerbuilder/libinstaller
diff options
context:
space:
mode:
authorTim Jenssen <tim.jenssen@nokia.com>2011-12-06 16:39:47 +0100
committerTim Jenssen <tim.jenssen@nokia.com>2011-12-07 11:13:34 +0100
commit628d2e86290fc0214c3bb04f554a5b5f98587d15 (patch)
tree5b7e2148a3495e896045cf88ae504bf11282aef5 /installerbuilder/libinstaller
parent02887b3ea7e77e859507c03dc0f89e23509b83ad (diff)
added PackageManagerCore::executeDetached
Change-Id: I005dc93b06f258ac46f9d79d916815cfacb966c6 Reviewed-by: Niels Weber <niels.2.weber@nokia.com> Reviewed-by: Alexander Lenhardt <alexander.lenhardt@nokia.com> Reviewed-by: Tim Jenssen <tim.jenssen@nokia.com>
Diffstat (limited to 'installerbuilder/libinstaller')
-rw-r--r--installerbuilder/libinstaller/packagemanagercore.cpp16
-rw-r--r--installerbuilder/libinstaller/packagemanagercore.h2
2 files changed, 18 insertions, 0 deletions
diff --git a/installerbuilder/libinstaller/packagemanagercore.cpp b/installerbuilder/libinstaller/packagemanagercore.cpp
index e2c9b7f21..ecd511d88 100644
--- a/installerbuilder/libinstaller/packagemanagercore.cpp
+++ b/installerbuilder/libinstaller/packagemanagercore.cpp
@@ -1088,8 +1088,24 @@ QList<QVariant> PackageManagerCore::execute(const QString &program, const QStrin
return QList<QVariant>() << QString::fromLatin1(process.readAllStandardOutput()) << process.exitCode();
}
+/*!
+ Executes a program.
+
+ \param program The program that should be executed.
+ \param arguments Optional list of arguments.
+ \return If the command could not be executed, an false will be returned
+*/
+
+bool PackageManagerCore::executeDetached(const QString &program, const QStringList &arguments) const
+{
+ QString adjustedProgram = replaceVariables(program);
+ QStringList adjustedArguments;
+ foreach (const QString &argument, arguments)
+ adjustedArguments.append(replaceVariables(argument));
+ return QProcess::startDetached(adjustedProgram, adjustedArguments);
}
+
/*!
Returns an environment variable.
*/
diff --git a/installerbuilder/libinstaller/packagemanagercore.h b/installerbuilder/libinstaller/packagemanagercore.h
index 014abf70e..a407bda1d 100644
--- a/installerbuilder/libinstaller/packagemanagercore.h
+++ b/installerbuilder/libinstaller/packagemanagercore.h
@@ -107,6 +107,8 @@ public:
Q_INVOKABLE QList<QVariant> execute(const QString &program,
const QStringList &arguments = QStringList(), const QString &stdIn = QString()) const;
+ Q_INVOKABLE bool executeDetached(const QString &program,
+ const QStringList &arguments = QStringList()) const;
Q_INVOKABLE QString environmentVariable(const QString &name) const;
Q_INVOKABLE bool performOperation(const QString &name, const QStringList &arguments);