summaryrefslogtreecommitdiffstats
path: root/logic/OneSixInstance.cpp
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2013-11-25 00:46:52 +0100
committerPetr Mrázek <peterix@gmail.com>2013-11-25 00:46:52 +0100
commit088b039cf7de6b217a289499a8efe5a47e861829 (patch)
tree7fe8861cc33e5bf3ca9a0347b04604a9f9883d81 /logic/OneSixInstance.cpp
parent82225a21e1b7f1671a42c1511032c59ecda0503f (diff)
downloadMultiMC-088b039cf7de6b217a289499a8efe5a47e861829.tar
MultiMC-088b039cf7de6b217a289499a8efe5a47e861829.tar.gz
MultiMC-088b039cf7de6b217a289499a8efe5a47e861829.tar.lz
MultiMC-088b039cf7de6b217a289499a8efe5a47e861829.tar.xz
MultiMC-088b039cf7de6b217a289499a8efe5a47e861829.zip
Detect java bitness on launch, use appropriate libraries
Fixes problems with latest snapshot
Diffstat (limited to 'logic/OneSixInstance.cpp')
-rw-r--r--logic/OneSixInstance.cpp32
1 files changed, 5 insertions, 27 deletions
diff --git a/logic/OneSixInstance.cpp b/logic/OneSixInstance.cpp
index a947b7c0..27713860 100644
--- a/logic/OneSixInstance.cpp
+++ b/logic/OneSixInstance.cpp
@@ -37,9 +37,9 @@ OneSixInstance::OneSixInstance(const QString &rootDir, SettingsObject *setting_o
reloadFullVersion();
}
-Task *OneSixInstance::doUpdate()
+Task *OneSixInstance::doUpdate(bool prepare_for_launch)
{
- return new OneSixUpdate(this);
+ return new OneSixUpdate(this, prepare_for_launch);
}
QString replaceTokensIn(QString text, QMap<QString, QString> with)
@@ -108,34 +108,12 @@ QStringList OneSixInstance::processMinecraftArgs(MojangAccountPtr account)
MinecraftProcess *OneSixInstance::prepareForLaunch(MojangAccountPtr account)
{
I_D(OneSixInstance);
- cleanupAfterRun();
+
+ QString natives_dir_raw = PathCombine(instanceRoot(), "natives/");
+
auto version = d->version;
if (!version)
return nullptr;
- auto libs_to_extract = version->getActiveNativeLibs();
- QString natives_dir_raw = PathCombine(instanceRoot(), "natives/");
- bool success = ensureFolderPathExists(natives_dir_raw);
- if (!success)
- {
- // FIXME: handle errors
- return nullptr;
- }
-
- for (auto lib : libs_to_extract)
- {
- QString storage = lib->storagePath();
- if(storage.contains("${arch}"))
- {
- storage.replace("${arch}", "64");
- }
- QString path = "libraries/" + lib->storagePath();
- QLOG_INFO() << "Will extract " << path.toLocal8Bit();
- if (JlCompress::extractWithExceptions(path, natives_dir_raw, lib->extract_excludes)
- .isEmpty())
- {
- return nullptr;
- }
- }
QStringList args;
args.append(Util::Commandline::splitArgs(settings().get("JvmArgs").toString()));