diff options
author | Tim Jenssen <tim.jenssen@nokia.com> | 2011-12-06 16:39:47 +0100 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@nokia.com> | 2011-12-07 11:13:34 +0100 |
commit | 628d2e86290fc0214c3bb04f554a5b5f98587d15 (patch) | |
tree | 5b7e2148a3495e896045cf88ae504bf11282aef5 /installerbuilder/libinstaller | |
parent | 02887b3ea7e77e859507c03dc0f89e23509b83ad (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.cpp | 16 | ||||
-rw-r--r-- | installerbuilder/libinstaller/packagemanagercore.h | 2 |
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); |