fix mod load with empty gameversions

Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
(cherry picked from commit 29b3eb5cc6fe3ba48a28598222212966bade1444)
This commit is contained in:
Trial97 2025-03-01 22:45:36 +02:00 committed by github-actions[bot]
parent 70ca7af205
commit 299cbf8009
3 changed files with 3 additions and 4 deletions

View File

@ -112,6 +112,8 @@ void Flame::FileResolvingTask::netJobFinished()
auto obj = Json::requireObject(file);
auto version = FlameMod::loadIndexedPackVersion(obj);
auto fileid = version.fileId.toInt();
Q_ASSERT(fileid != 0);
Q_ASSERT(m_manifest.files.contains(fileid));
m_manifest.files[fileid].version = version;
auto url = QUrl(version.downloadUrl, QUrl::TolerantMode);
if (!url.isValid() && "sha1" == version.hash_type && !version.hash.isEmpty()) {

View File

@ -105,9 +105,6 @@ void FlameMod::loadIndexedPackVersions(ModPlatform::IndexedPack& pack,
auto FlameMod::loadIndexedPackVersion(QJsonObject& obj, bool load_changelog) -> ModPlatform::IndexedVersion
{
auto versionArray = Json::requireArray(obj, "gameVersions");
if (versionArray.isEmpty()) {
return {};
}
ModPlatform::IndexedVersion file;
for (auto mcVer : versionArray) {

View File

@ -45,7 +45,7 @@ static void loadManifestV1(Flame::Manifest& pack, QJsonObject& manifest)
Flame::File file;
loadFileV1(file, obj);
Q_ASSERT(file.projectId != 0);
pack.files.insert(file.fileId, file);
}