Fix compilation (actually this time!), incorporating new changes
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
This commit is contained in:
parent
d4ea9c2717
commit
5538c1d0af
@ -30,8 +30,8 @@ void JavaDownloader::executeTask()
|
|||||||
}
|
}
|
||||||
void JavaDownloader::downloadMojangJavaList(const QString& OS, bool isLegacy)
|
void JavaDownloader::downloadMojangJavaList(const QString& OS, bool isLegacy)
|
||||||
{
|
{
|
||||||
auto netJob = new NetJob(QString("JRE::QueryVersions"), APPLICATION->network());
|
auto netJob = makeShared<NetJob>(QString("JRE::QueryVersions"), APPLICATION->network());
|
||||||
auto response = new QByteArray();
|
auto response = std::make_shared<QByteArray>();
|
||||||
setStatus(tr("Querying mojang meta"));
|
setStatus(tr("Querying mojang meta"));
|
||||||
netJob->addNetAction(Net::Download::makeByteArray(
|
netJob->addNetAction(Net::Download::makeByteArray(
|
||||||
QUrl("https://piston-meta.mojang.com/v1/products/java-runtime/2ec0cc96c44e5a76b9c8b7c39df7210883d12871/all.json"), response));
|
QUrl("https://piston-meta.mojang.com/v1/products/java-runtime/2ec0cc96c44e5a76b9c8b7c39df7210883d12871/all.json"), response));
|
||||||
@ -41,18 +41,17 @@ void JavaDownloader::downloadMojangJavaList(const QString& OS, bool isLegacy)
|
|||||||
.removeRecursively();
|
.removeRecursively();
|
||||||
});
|
});
|
||||||
|
|
||||||
connect(netJob, &NetJob::finished, [netJob, response, this] {
|
connect(netJob.get(), &NetJob::finished, [netJob, response, this] {
|
||||||
// delete so that it's not called on a deleted job
|
// delete so that it's not called on a deleted job
|
||||||
disconnect(this, &Task::aborted, netJob, &NetJob::abort);
|
// FIXME: is this needed? qt should handle this
|
||||||
netJob->deleteLater();
|
disconnect(this, &Task::aborted, netJob.get(), &NetJob::abort);
|
||||||
delete response;
|
|
||||||
});
|
});
|
||||||
connect(netJob, &NetJob::progress, this, &JavaDownloader::progress);
|
connect(netJob.get(), &NetJob::progress, this, &JavaDownloader::progress);
|
||||||
connect(netJob, &NetJob::failed, this, &JavaDownloader::emitFailed);
|
connect(netJob.get(), &NetJob::failed, this, &JavaDownloader::emitFailed);
|
||||||
|
|
||||||
connect(this, &Task::aborted, netJob, &NetJob::abort);
|
connect(this, &Task::aborted, netJob.get(), &NetJob::abort);
|
||||||
|
|
||||||
connect(netJob, &NetJob::succeeded, [response, OS, isLegacy, this, netJob] {
|
connect(netJob.get(), &NetJob::succeeded, [response, OS, isLegacy, this, netJob] {
|
||||||
QJsonParseError parse_error{};
|
QJsonParseError parse_error{};
|
||||||
QJsonDocument doc = QJsonDocument::fromJson(*response, &parse_error);
|
QJsonDocument doc = QJsonDocument::fromJson(*response, &parse_error);
|
||||||
if (parse_error.error != QJsonParseError::NoError) {
|
if (parse_error.error != QJsonParseError::NoError) {
|
||||||
@ -66,7 +65,7 @@ void JavaDownloader::downloadMojangJavaList(const QString& OS, bool isLegacy)
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
// mojang does not have a JRE for us, let's get azul zulu
|
// mojang does not have a JRE for us, let's get azul zulu
|
||||||
downloadAzulMeta(OS, isLegacy, netJob);
|
downloadAzulMeta(OS, isLegacy, netJob.get());
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -76,21 +75,19 @@ void JavaDownloader::parseMojangManifest(bool isLegacy, const QJsonArray& versio
|
|||||||
{
|
{
|
||||||
setStatus(tr("Downloading Java from Mojang"));
|
setStatus(tr("Downloading Java from Mojang"));
|
||||||
auto url = Json::ensureString(Json::ensureObject(Json::ensureObject(versionArray[0]), "manifest"), "url");
|
auto url = Json::ensureString(Json::ensureObject(Json::ensureObject(versionArray[0]), "manifest"), "url");
|
||||||
auto download = new NetJob(QString("JRE::DownloadJava"), APPLICATION->network());
|
auto download = makeShared<NetJob>(QString("JRE::DownloadJava"), APPLICATION->network());
|
||||||
auto files = new QByteArray();
|
auto files = std::make_shared<QByteArray>();
|
||||||
|
|
||||||
download->addNetAction(Net::Download::makeByteArray(QUrl(url), files));
|
download->addNetAction(Net::Download::makeByteArray(QUrl(url), files));
|
||||||
|
|
||||||
connect(download, &NetJob::finished, [download, files, this] {
|
connect(download.get(), &NetJob::finished, [download, files, this] {
|
||||||
disconnect(this, &Task::aborted, download, &NetJob::abort);
|
disconnect(this, &Task::aborted, download.get(), &NetJob::abort);
|
||||||
download->deleteLater();
|
|
||||||
delete files;
|
|
||||||
});
|
});
|
||||||
connect(download, &NetJob::progress, this, &JavaDownloader::progress);
|
connect(download.get(), &NetJob::progress, this, &JavaDownloader::progress);
|
||||||
connect(download, &NetJob::failed, this, &JavaDownloader::emitFailed);
|
connect(download.get(), &NetJob::failed, this, &JavaDownloader::emitFailed);
|
||||||
connect(this, &Task::aborted, download, &NetJob::abort);
|
connect(this, &Task::aborted, download.get(), &NetJob::abort);
|
||||||
|
|
||||||
connect(download, &NetJob::succeeded, [files, isLegacy, this] {
|
connect(download.get(), &NetJob::succeeded, [files, isLegacy, this] {
|
||||||
QJsonParseError parse_error{};
|
QJsonParseError parse_error{};
|
||||||
QJsonDocument doc = QJsonDocument::fromJson(*files, &parse_error);
|
QJsonDocument doc = QJsonDocument::fromJson(*files, &parse_error);
|
||||||
if (parse_error.error != QJsonParseError::NoError) {
|
if (parse_error.error != QJsonParseError::NoError) {
|
||||||
@ -166,8 +163,8 @@ void JavaDownloader::downloadAzulMeta(const QString& OS, bool isLegacy, const Ne
|
|||||||
QString bitness;
|
QString bitness;
|
||||||
|
|
||||||
mojangOStoAzul(OS, azulOS, arch, bitness);
|
mojangOStoAzul(OS, azulOS, arch, bitness);
|
||||||
auto metaResponse = new QByteArray();
|
auto metaResponse = std::make_shared<QByteArray>();
|
||||||
auto downloadJob = new NetJob(QString("JRE::QueryAzulMeta"), APPLICATION->network());
|
auto downloadJob = makeShared<NetJob>(QString("JRE::QueryAzulMeta"), APPLICATION->network());
|
||||||
downloadJob->addNetAction(
|
downloadJob->addNetAction(
|
||||||
Net::Download::makeByteArray(QString("https://api.azul.com/zulu/download/community/v1.0/bundles/?"
|
Net::Download::makeByteArray(QString("https://api.azul.com/zulu/download/community/v1.0/bundles/?"
|
||||||
"java_version=%1"
|
"java_version=%1"
|
||||||
@ -180,15 +177,13 @@ void JavaDownloader::downloadAzulMeta(const QString& OS, bool isLegacy, const Ne
|
|||||||
)
|
)
|
||||||
.arg(javaVersion, azulOS, arch, bitness),
|
.arg(javaVersion, azulOS, arch, bitness),
|
||||||
metaResponse));
|
metaResponse));
|
||||||
connect(downloadJob, &NetJob::finished, [downloadJob, metaResponse, this] {
|
connect(downloadJob.get(), &NetJob::finished, [downloadJob, metaResponse, this] {
|
||||||
disconnect(this, &Task::aborted, downloadJob, &NetJob::abort);
|
disconnect(this, &Task::aborted, downloadJob.get(), &NetJob::abort);
|
||||||
downloadJob->deleteLater();
|
|
||||||
delete metaResponse;
|
|
||||||
});
|
});
|
||||||
connect(this, &Task::aborted, downloadJob, &NetJob::abort);
|
connect(this, &Task::aborted, downloadJob.get(), &NetJob::abort);
|
||||||
connect(netJob, &NetJob::failed, this, &JavaDownloader::emitFailed);
|
connect(netJob, &NetJob::failed, this, &JavaDownloader::emitFailed);
|
||||||
connect(downloadJob, &NetJob::progress, this, &JavaDownloader::progress);
|
connect(downloadJob.get(), &NetJob::progress, this, &JavaDownloader::progress);
|
||||||
connect(downloadJob, &NetJob::succeeded, [metaResponse, isLegacy, this] {
|
connect(downloadJob.get(), &NetJob::succeeded, [metaResponse, isLegacy, this] {
|
||||||
QJsonParseError parse_error{};
|
QJsonParseError parse_error{};
|
||||||
QJsonDocument doc = QJsonDocument::fromJson(*metaResponse, &parse_error);
|
QJsonDocument doc = QJsonDocument::fromJson(*metaResponse, &parse_error);
|
||||||
if (parse_error.error != QJsonParseError::NoError) {
|
if (parse_error.error != QJsonParseError::NoError) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user