diff options
author | Petr Mrázek <peterix@gmail.com> | 2015-03-27 02:03:14 +0100 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2015-03-27 02:03:14 +0100 |
commit | eae544f0ebc26a2b103091b93d4f7c4188d00cff (patch) | |
tree | f8aa03bd0cdc877d87e674a93141facff939767e | |
parent | 2eb3ec39bfd13e4bcc29655ea41326b4462d938d (diff) | |
download | MultiMC-eae544f0ebc26a2b103091b93d4f7c4188d00cff.tar MultiMC-eae544f0ebc26a2b103091b93d4f7c4188d00cff.tar.gz MultiMC-eae544f0ebc26a2b103091b93d4f7c4188d00cff.tar.lz MultiMC-eae544f0ebc26a2b103091b93d4f7c4188d00cff.tar.xz MultiMC-eae544f0ebc26a2b103091b93d4f7c4188d00cff.zip |
GH-841 fix for modpack downloads on windows
-rw-r--r-- | gui/MainWindow.cpp | 3 | ||||
-rw-r--r-- | logic/net/NetJob.cpp | 3 | ||||
-rw-r--r-- | logic/net/NetJob.h | 2 |
3 files changed, 5 insertions, 3 deletions
diff --git a/gui/MainWindow.cpp b/gui/MainWindow.cpp index 0231dd44..b28d2d9b 100644 --- a/gui/MainWindow.cpp +++ b/gui/MainWindow.cpp @@ -1075,12 +1075,13 @@ void MainWindow::on_actionAddInstance_triggered() } else { - const QString path = modpackUrl.host() + '/' + QString::fromUtf8(modpackUrl.toEncoded()); + const QString path = modpackUrl.host() + '/' + modpackUrl.path(); auto entry = MMC->metacache()->resolveEntry("general", path); CacheDownloadPtr dl = CacheDownload::make(modpackUrl, entry); NetJob job(tr("Modpack download")); job.addNetAction(dl); + // FIXME: possibly causes endless loop problems ProgressDialog dlDialog(this); if (dlDialog.exec(&job) != QDialog::Accepted) { diff --git a/logic/net/NetJob.cpp b/logic/net/NetJob.cpp index 6d10db48..85892581 100644 --- a/logic/net/NetJob.cpp +++ b/logic/net/NetJob.cpp @@ -73,7 +73,8 @@ void NetJob::start() { m_todo.enqueue(i); } - startMoreParts(); + // hack that delays early failures so they can be caught easier + QMetaObject::invokeMethod(this, "startMoreParts", Qt::QueuedConnection); } void NetJob::startMoreParts() diff --git a/logic/net/NetJob.h b/logic/net/NetJob.h index 30ae609a..0d8b7fbd 100644 --- a/logic/net/NetJob.h +++ b/logic/net/NetJob.h @@ -83,7 +83,7 @@ public: } QStringList getFailedFiles(); -private: +private slots: void startMoreParts(); signals: |