diff options
author | Jamie Mansfield <jmansfield@cadixdev.org> | 2021-04-05 21:19:05 +0100 |
---|---|---|
committer | Jamie Mansfield <jmansfield@cadixdev.org> | 2021-04-08 18:51:04 +0100 |
commit | d6dc22d57c33497b5908abaf53770cde1773c0a7 (patch) | |
tree | dfe0580cd1736cffe34b467395ff328fdf8304ca /application/pages/modplatform | |
parent | 3a1abb555b844c79a80615727b11019403767ce7 (diff) | |
download | PrismLauncher-d6dc22d57c33497b5908abaf53770cde1773c0a7.tar.gz PrismLauncher-d6dc22d57c33497b5908abaf53770cde1773c0a7.tar.bz2 PrismLauncher-d6dc22d57c33497b5908abaf53770cde1773c0a7.zip |
NOISSUE Handle JSON exceptions in ATLauncher support
Thanks to phit for pointing this out :)
Diffstat (limited to 'application/pages/modplatform')
-rw-r--r-- | application/pages/modplatform/atlauncher/AtlListModel.cpp (renamed from application/pages/modplatform/atlauncher/AtlModel.cpp) | 13 | ||||
-rw-r--r-- | application/pages/modplatform/atlauncher/AtlListModel.h (renamed from application/pages/modplatform/atlauncher/AtlModel.h) | 0 | ||||
-rw-r--r-- | application/pages/modplatform/atlauncher/AtlPage.h | 2 |
3 files changed, 12 insertions, 3 deletions
diff --git a/application/pages/modplatform/atlauncher/AtlModel.cpp b/application/pages/modplatform/atlauncher/AtlListModel.cpp index 4b1b1c8e..f3be6198 100644 --- a/application/pages/modplatform/atlauncher/AtlModel.cpp +++ b/application/pages/modplatform/atlauncher/AtlListModel.cpp @@ -1,8 +1,9 @@ -#include "AtlModel.h" +#include "AtlListModel.h" #include <BuildConfig.h> #include <MultiMC.h> #include <Env.h> +#include <Json.h> namespace Atl { @@ -99,7 +100,15 @@ void ListModel::requestFinished() auto packObj = packRaw.toObject(); ATLauncher::IndexedPack pack; - ATLauncher::loadIndexedPack(pack, packObj); + + try { + ATLauncher::loadIndexedPack(pack, packObj); + } + catch (const JSONValidationError &e) { + qDebug() << QString::fromUtf8(response); + qWarning() << "Error while reading pack manifest from ATLauncher: " << e.cause(); + return; + } // ignore packs without a published version if(pack.versions.length() == 0) continue; diff --git a/application/pages/modplatform/atlauncher/AtlModel.h b/application/pages/modplatform/atlauncher/AtlListModel.h index 2d30a64e..2d30a64e 100644 --- a/application/pages/modplatform/atlauncher/AtlModel.h +++ b/application/pages/modplatform/atlauncher/AtlListModel.h diff --git a/application/pages/modplatform/atlauncher/AtlPage.h b/application/pages/modplatform/atlauncher/AtlPage.h index 368de666..715cf5f4 100644 --- a/application/pages/modplatform/atlauncher/AtlPage.h +++ b/application/pages/modplatform/atlauncher/AtlPage.h @@ -16,7 +16,7 @@ #pragma once #include "AtlFilterModel.h" -#include "AtlModel.h" +#include "AtlListModel.h" #include <QWidget> |