diff options
author | flow <flowlnlnln@gmail.com> | 2022-07-21 16:41:44 -0300 |
---|---|---|
committer | flow <flowlnlnln@gmail.com> | 2022-09-20 18:36:07 -0300 |
commit | 2246c3359bcd07d8bfab949d79a1e428a948f1b7 (patch) | |
tree | 2f70776cc96c713c63020ed64291659aa3ca13bd | |
parent | 242fb156a281ef188c9fd75969c5d70ba6f8c140 (diff) | |
download | PrismLauncher-2246c3359bcd07d8bfab949d79a1e428a948f1b7.tar.gz PrismLauncher-2246c3359bcd07d8bfab949d79a1e428a948f1b7.tar.bz2 PrismLauncher-2246c3359bcd07d8bfab949d79a1e428a948f1b7.zip |
refactor: add `throw_on_blocked` arg to Flame file parse
Signed-off-by: flow <flowlnlnln@gmail.com>
-rw-r--r-- | launcher/modplatform/flame/PackManifest.cpp | 4 | ||||
-rw-r--r-- | launcher/modplatform/flame/PackManifest.h | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/launcher/modplatform/flame/PackManifest.cpp b/launcher/modplatform/flame/PackManifest.cpp index 12a4b990..81395fcd 100644 --- a/launcher/modplatform/flame/PackManifest.cpp +++ b/launcher/modplatform/flame/PackManifest.cpp @@ -61,7 +61,7 @@ void Flame::loadManifest(Flame::Manifest& m, const QString& filepath) loadManifestV1(m, obj); } -bool Flame::File::parseFromObject(const QJsonObject& obj) +bool Flame::File::parseFromObject(const QJsonObject& obj, bool throw_on_blocked) { fileName = Json::requireString(obj, "fileName"); // This is a piece of a Flame project JSON pulled out into the file metadata (here) for convenience @@ -91,7 +91,7 @@ bool Flame::File::parseFromObject(const QJsonObject& obj) // may throw, if the project is blocked QString rawUrl = Json::ensureString(obj, "downloadUrl"); url = QUrl(rawUrl, QUrl::TolerantMode); - if (!url.isValid()) { + if (!url.isValid() && throw_on_blocked) { throw JSONValidationError(QString("Invalid URL: %1").arg(rawUrl)); } diff --git a/launcher/modplatform/flame/PackManifest.h b/launcher/modplatform/flame/PackManifest.h index 677db1c3..a69e1321 100644 --- a/launcher/modplatform/flame/PackManifest.h +++ b/launcher/modplatform/flame/PackManifest.h @@ -46,7 +46,7 @@ namespace Flame struct File { // NOTE: throws JSONValidationError - bool parseFromObject(const QJsonObject& object); + bool parseFromObject(const QJsonObject& object, bool throw_on_blocked = true); int projectId = 0; int fileId = 0; |