summaryrefslogtreecommitdiffstats
path: root/mmc_updater/src/UpdateInstaller.cpp
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2014-01-05 16:47:12 +0100
committerPetr Mrázek <peterix@gmail.com>2014-01-05 16:47:12 +0100
commit0dcf694c8776ac03779e465bdc4859fba9be314d (patch)
tree25c742f97a98fb7534f8a2180f5b7b165bf7e8c5 /mmc_updater/src/UpdateInstaller.cpp
parenta64eebf8eb758971b090b2e87212c2458424797e (diff)
downloadMultiMC-0dcf694c8776ac03779e465bdc4859fba9be314d.tar
MultiMC-0dcf694c8776ac03779e465bdc4859fba9be314d.tar.gz
MultiMC-0dcf694c8776ac03779e465bdc4859fba9be314d.tar.lz
MultiMC-0dcf694c8776ac03779e465bdc4859fba9be314d.tar.xz
MultiMC-0dcf694c8776ac03779e465bdc4859fba9be314d.zip
More updater fixage
Preserve --dir parameter after updating Allow more than one copy of a command line parameter in MultiMC Linux runner script no longer changes current directory, which allows '--dir .' Fixed unit tests, removed the obsolete one (for some legacy updater command line params that were also removed) [fixes 63127704]
Diffstat (limited to 'mmc_updater/src/UpdateInstaller.cpp')
-rw-r--r--mmc_updater/src/UpdateInstaller.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/mmc_updater/src/UpdateInstaller.cpp b/mmc_updater/src/UpdateInstaller.cpp
index aca23ff7..b29c5316 100644
--- a/mmc_updater/src/UpdateInstaller.cpp
+++ b/mmc_updater/src/UpdateInstaller.cpp
@@ -46,6 +46,11 @@ void UpdateInstaller::setFinishCmd(const std::string& cmd)
m_finishCmd = cmd;
}
+void UpdateInstaller::setFinishDir(const std::string &dir)
+{
+ m_finishDir = dir;
+}
+
std::list<std::string> UpdateInstaller::updaterArgs() const
{
std::list<std::string> args;
@@ -63,6 +68,11 @@ std::list<std::string> UpdateInstaller::updaterArgs() const
{
args.push_back("--dry-run");
}
+ if (m_finishDir.size())
+ {
+ args.push_back("--dir");
+ args.push_back(m_finishDir);
+ }
return args;
}
@@ -420,6 +430,11 @@ void UpdateInstaller::restartMainApp()
if (!command.empty())
{
+ if(!m_finishDir.empty())
+ {
+ args.push_back("--dir");
+ args.push_back(m_finishDir);
+ }
LOG(Info,"Starting main application " + command);
if(!m_dryRun)
{