Remove the dep if it fails for any reason
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
parent
a3445cbbdd
commit
c05c001ab2
@ -137,10 +137,11 @@ Task::Ptr GetModDependenciesTask::getProjectInfoTask(std::shared_ptr<PackDepende
|
|||||||
auto provider = pDep->pack->provider == m_flame_provider.name ? m_flame_provider : m_modrinth_provider;
|
auto provider = pDep->pack->provider == m_flame_provider.name ? m_flame_provider : m_modrinth_provider;
|
||||||
auto responseInfo = std::make_shared<QByteArray>();
|
auto responseInfo = std::make_shared<QByteArray>();
|
||||||
auto info = provider.api->getProject(pDep->pack->addonId.toString(), responseInfo);
|
auto info = provider.api->getProject(pDep->pack->addonId.toString(), responseInfo);
|
||||||
QObject::connect(info.get(), &NetJob::succeeded, [responseInfo, provider, pDep] {
|
QObject::connect(info.get(), &NetJob::succeeded, [this, responseInfo, provider, pDep] {
|
||||||
QJsonParseError parse_error{};
|
QJsonParseError parse_error{};
|
||||||
QJsonDocument doc = QJsonDocument::fromJson(*responseInfo, &parse_error);
|
QJsonDocument doc = QJsonDocument::fromJson(*responseInfo, &parse_error);
|
||||||
if (parse_error.error != QJsonParseError::NoError) {
|
if (parse_error.error != QJsonParseError::NoError) {
|
||||||
|
removePack(pDep->pack->addonId);
|
||||||
qWarning() << "Error while parsing JSON response for mod info at " << parse_error.offset
|
qWarning() << "Error while parsing JSON response for mod info at " << parse_error.offset
|
||||||
<< " reason: " << parse_error.errorString();
|
<< " reason: " << parse_error.errorString();
|
||||||
qDebug() << *responseInfo;
|
qDebug() << *responseInfo;
|
||||||
@ -151,6 +152,7 @@ Task::Ptr GetModDependenciesTask::getProjectInfoTask(std::shared_ptr<PackDepende
|
|||||||
: Json::requireObject(doc);
|
: Json::requireObject(doc);
|
||||||
provider.mod->loadIndexedPack(*pDep->pack, obj);
|
provider.mod->loadIndexedPack(*pDep->pack, obj);
|
||||||
} catch (const JSONValidationError& e) {
|
} catch (const JSONValidationError& e) {
|
||||||
|
removePack(pDep->pack->addonId);
|
||||||
qDebug() << doc;
|
qDebug() << doc;
|
||||||
qWarning() << "Error while reading mod info: " << e.cause();
|
qWarning() << "Error while reading mod info: " << e.cause();
|
||||||
}
|
}
|
||||||
@ -211,11 +213,13 @@ Task::Ptr GetModDependenciesTask::prepareDependencyTask(const ModPlatform::Depen
|
|||||||
pDep->pack->versionsLoaded = true;
|
pDep->pack->versionsLoaded = true;
|
||||||
|
|
||||||
} catch (const JSONValidationError& e) {
|
} catch (const JSONValidationError& e) {
|
||||||
|
removePack(dep.addonId);
|
||||||
qDebug() << doc;
|
qDebug() << doc;
|
||||||
qWarning() << "Error while reading mod version: " << e.cause();
|
qWarning() << "Error while reading mod version: " << e.cause();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (level == 0) {
|
if (level == 0) {
|
||||||
|
removePack(dep.addonId);
|
||||||
qWarning() << "Dependency cycle exceeded";
|
qWarning() << "Dependency cycle exceeded";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user