summaryrefslogtreecommitdiff
path: root/src/mainwindow.cpp
diff options
context:
space:
mode:
authorSilarn <jrim@rimpo.org>2019-02-04 00:59:05 -0600
committerSilarn <jrim@rimpo.org>2019-02-18 21:31:19 -0600
commit177f5c0446ab09f4010c86e9d8e1d3d02a8a76a9 (patch)
treedf7fb6c3a9ee3deaeb0e213b685d0bb406f01889 /src/mainwindow.cpp
parent91e909bc45e8b33b0a774c71ed28175243f0cccf (diff)
Fix issues with duplicate requests, expand parallel requests to 6
Diffstat (limited to 'src/mainwindow.cpp')
-rw-r--r--src/mainwindow.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp
index fecf8704..cdf363cc 100644
--- a/src/mainwindow.cpp
+++ b/src/mainwindow.cpp
@@ -5489,6 +5489,7 @@ void MainWindow::nxmUpdatesAvailable(QString gameName, int modID, QVariant userD
}
std::vector<ModInfo::Ptr> modsList = ModInfo::getByModID(gameNameReal, modID);
+ bool requiresInfo = false;
for (auto mod : modsList) {
bool foundUpdate = false;
bool oldFile = false;
@@ -5544,13 +5545,18 @@ void MainWindow::nxmUpdatesAvailable(QString gameName, int modID, QVariant userD
if (foundUpdate) {
// Just get the standard data updates for endorsements and descriptions
mod->setLastNexusUpdate(QDateTime::currentDateTimeUtc());
- mod->updateNXMInfo();
} else {
// Scrape mod data here so we can use the mod version if no file update was located
- NexusInterface::instance(&m_PluginContainer)->requestModInfo(gameName, modID, this, QVariant(), QString());
+ requiresInfo = true;
}
+
+ if (mod->getLastNexusQuery().addDays(1) <= QDateTime::currentDateTime())
+ requiresInfo = true;
}
+ if (requiresInfo)
+ NexusInterface::instance(&m_PluginContainer)->requestModInfo(gameName, modID, this, QVariant(), QString());
+
if (--m_ModsToUpdate <= 0) {
statusBar()->hide();
} else {