From 433dd2d16168845889373ffb98a9f3b806ea1de2 Mon Sep 17 00:00:00 2001 From: Jamie Mansfield Date: Thu, 23 Sep 2021 00:52:10 +0100 Subject: [PATCH] GH-4114 Allow the same file for be downloaded to multiple paths This is a potential fix to GH-4114. --- launcher/modplatform/modpacksch/FTBPackInstallTask.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/launcher/modplatform/modpacksch/FTBPackInstallTask.cpp b/launcher/modplatform/modpacksch/FTBPackInstallTask.cpp index 2e87a754..496edde7 100644 --- a/launcher/modplatform/modpacksch/FTBPackInstallTask.cpp +++ b/launcher/modplatform/modpacksch/FTBPackInstallTask.cpp @@ -108,12 +108,12 @@ void PackInstallTask::downloadPack() auto relpath = FS::PathCombine("minecraft", file.path, file.name); auto path = FS::PathCombine(m_stagingPath, relpath); - if (filesToCopy.contains(entry->getFullPath())) { + if (filesToCopy.contains(path)) { qWarning() << "Ignoring" << file.url << "as a file of that path is already downloading."; continue; } qDebug() << "Will download" << file.url << "to" << path; - filesToCopy[entry->getFullPath()] = path; + filesToCopy[path] = entry->getFullPath(); auto dl = Net::Download::makeCached(file.url, entry); if (!file.sha1.isEmpty()) { @@ -149,8 +149,8 @@ void PackInstallTask::install() setStatus(tr("Copying modpack files")); for (auto iter = filesToCopy.begin(); iter != filesToCopy.end(); iter++) { - auto &from = iter.key(); - auto &to = iter.value(); + auto &to = iter.key(); + auto &from = iter.value(); FS::copy fileCopyOperation(from, to); if(!fileCopyOperation()) { qWarning() << "Failed to copy" << from << "to" << to;