diff options
Diffstat (limited to 'src/mainwindow.cpp')
| -rw-r--r-- | src/mainwindow.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index a8026b68..31ee1ae7 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -223,6 +223,7 @@ MainWindow::MainWindow(const QString &exeName, QSettings &initSettings, QWidget NexusInterface::instance()->setNMMVersion(m_Settings.getNMMVersion()); m_InstallationManager.setModsDirectory(m_Settings.getModDirectory()); + m_InstallationManager.setDownloadDirectory(m_Settings.getDownloadDirectory()); updateDownloadListDelegate(); @@ -1435,6 +1436,12 @@ void MainWindow::on_profileBox_currentIndexChanged(int index) saveCurrentLists(); } + // ensure the new index is valid + if (index < 0 || index >= ui->profileBox->count()) { + qDebug("invalid profile index, using last profile"); + ui->profileBox->setCurrentIndex(ui->profileBox->count() - 1); + } + if (ui->profileBox->currentIndex() == 0) { ProfilesDialog(m_GamePath).exec(); while (!refreshProfiles()) { @@ -3909,6 +3916,7 @@ void MainWindow::on_actionSettings_triggered() bool proxy = m_Settings.useProxy(); m_Settings.query(this); m_InstallationManager.setModsDirectory(m_Settings.getModDirectory()); + m_InstallationManager.setDownloadDirectory(m_Settings.getDownloadDirectory()); fixCategories(); refreshFilters(); if (QDir::fromNativeSeparators(m_DownloadManager.getOutputDirectory()) != QDir::fromNativeSeparators(m_Settings.getDownloadDirectory())) { |
