From f72a38b06cfa1935fc33958157262df94b484d97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Mon, 7 Jul 2014 08:40:03 +0200 Subject: [PATCH] Update the forge hacks. --- logic/forge/ForgeInstaller.cpp | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/logic/forge/ForgeInstaller.cpp b/logic/forge/ForgeInstaller.cpp index 7f9524086..7ab0a09b7 100644 --- a/logic/forge/ForgeInstaller.cpp +++ b/logic/forge/ForgeInstaller.cpp @@ -133,24 +133,38 @@ bool ForgeInstaller::add(OneSixInstance *to) int sliding_insert_window = 0; { QJsonArray librariesPlus; - - // for each library in the version we are adding (except for the blacklisted) + // A blacklist - we ignore these entirely QSet blacklist{"lwjgl", "lwjgl_util", "lwjgl-platform"}; + // + QList xzlist{"org.scala-lang", "com.typesafe"}; + // for each library in the version we are adding (except for the blacklisted) for (auto lib : m_forge_json->libraries) { QString libName = lib->name(); + QString rawName = lib->rawName(); + + // ignore blacklisted stuff + if (blacklist.contains(libName)) + continue; + // WARNING: This could actually break. // if this is the actual forge lib, set an absolute url for the download if (libName.contains("minecraftforge")) { lib->setAbsoluteUrl(m_universal_url); } - else if (libName.contains("scala")) + + // WARNING: This could actually break. + // mark bad libraries based on the xzlist above + for(auto entry : xzlist) { - lib->setHint("forge-pack-xz"); + QLOG_DEBUG() << "Testing " << rawName << " : " << entry; + if(rawName.startsWith(entry)) + { + lib->setHint("forge-pack-xz"); + break; + } } - if (blacklist.contains(libName)) - continue; QJsonObject libObj = lib->toJson();