From 1c08ca0e2d805c24f4463a58212cc48bcba68c7f Mon Sep 17 00:00:00 2001 From: James Turner Date: Thu, 4 Oct 2018 21:22:05 +0100 Subject: [PATCH] =?UTF-8?q?Launcher:=20don=E2=80=99t=20update=20already=20?= =?UTF-8?q?updating=20aircraft?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/GUI/LauncherController.cxx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/GUI/LauncherController.cxx b/src/GUI/LauncherController.cxx index 2ab89f331..61cfcd9fe 100644 --- a/src/GUI/LauncherController.cxx +++ b/src/GUI/LauncherController.cxx @@ -660,9 +660,13 @@ void LauncherController::requestInstallCancel(QUrl aircraftUri) void LauncherController::requestUpdateAllAircraft() { - const PackageList& toBeUpdated = globals->packageRoot()->packagesNeedingUpdate(); - std::for_each(toBeUpdated.begin(), toBeUpdated.end(), [](PackageRef pkg) { - globals->packageRoot()->scheduleToUpdate(pkg->install()); + const auto pkgRoot = globals->packageRoot(); + const PackageList& toBeUpdated = pkgRoot->packagesNeedingUpdate(); + std::for_each(toBeUpdated.begin(), toBeUpdated.end(), [pkgRoot](PackageRef pkg) { + const auto ins = pkg->install(); + if (!pkgRoot->isInstallQueued(ins)) { + pkgRoot->scheduleToUpdate(ins); + } }); }