diff options
author | Petr Mrázek <peterix@gmail.com> | 2013-11-25 00:46:52 +0100 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2013-11-25 00:46:52 +0100 |
commit | 088b039cf7de6b217a289499a8efe5a47e861829 (patch) | |
tree | 7fe8861cc33e5bf3ca9a0347b04604a9f9883d81 /logic/OneSixInstance.cpp | |
parent | 82225a21e1b7f1671a42c1511032c59ecda0503f (diff) | |
download | MultiMC-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.cpp | 32 |
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())); |