diff --git a/src/common/config.cpp b/src/common/config.cpp index d67f997df..4fe28fadd 100644 --- a/src/common/config.cpp +++ b/src/common/config.cpp @@ -326,7 +326,7 @@ void setMainWindowGeometry(u32 x, u32 y, u32 w, u32 h) { main_window_geometry_h = h; } bool addGameInstallDir(const std::filesystem::path& dir) { - if (std::find(settings_install_dirs.begin(), settings_install_dirs.end(), dir) == + if (std::find(settings_install_dirs.begin(), settings_install_dirs.end(), dir) == settings_install_dirs.end()) { settings_install_dirs.push_back(dir); return true; diff --git a/src/qt_gui/settings_dialog.cpp b/src/qt_gui/settings_dialog.cpp index 5a9948415..d4e1bcc9a 100644 --- a/src/qt_gui/settings_dialog.cpp +++ b/src/qt_gui/settings_dialog.cpp @@ -225,10 +225,7 @@ SettingsDialog::SettingsDialog(std::span physical_devices, QWidge QString file_path_string = QFileDialog::getExistingDirectory(this, tr("Directory to install games")); auto file_path = Common::FS::PathFromQString(file_path_string); - if (!file_path.empty()) { - if (!Config::addGameInstallDir(file_path)) { - return; - } + if (!file_path.empty() && Config::addGameInstallDir(file_path)) { QListWidgetItem* item = new QListWidgetItem(file_path_string); ui->gameFoldersListWidget->addItem(item); } @@ -239,7 +236,7 @@ SettingsDialog::SettingsDialog(std::span physical_devices, QWidge !ui->gameFoldersListWidget->selectedItems().isEmpty()); }); - connect(ui->removeFolderButton, &QPushButton::clicked, this, [this]() { + connect(ui->removeFolderButton, &QPushButton::clicked, this, [this]() { QListWidgetItem* selected_item = ui->gameFoldersListWidget->currentItem(); QString item_path_string = selected_item ? selected_item->text() : QString(); if (!item_path_string.isEmpty()) {