From fd7d51eed61fc8b9bc67e00327c015d5e21d0834 Mon Sep 17 00:00:00 2001 From: Techjar Date: Fri, 24 Aug 2018 07:58:38 -0400 Subject: [PATCH] Qt/GCMemcardManager: Fix deletion of multiple files --- Source/Core/DolphinQt/GCMemcardManager.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Source/Core/DolphinQt/GCMemcardManager.cpp b/Source/Core/DolphinQt/GCMemcardManager.cpp index 872676532a..2fcc23ac45 100644 --- a/Source/Core/DolphinQt/GCMemcardManager.cpp +++ b/Source/Core/DolphinQt/GCMemcardManager.cpp @@ -382,10 +382,15 @@ void GCMemcardManager::DeleteFiles() return; } + std::vector file_indices; for (int i = 0; i < count; i++) { auto sel = selection[i * m_slot_table[m_active_slot]->columnCount()]; - int file_index = memcard->GetFileIndex(m_slot_table[m_active_slot]->row(sel)); + file_indices.push_back(memcard->GetFileIndex(m_slot_table[m_active_slot]->row(sel))); + } + + for (int file_index : file_indices) + { if (memcard->RemoveFile(file_index) != SUCCESS) QMessageBox::warning(this, tr("Remove failed"), tr("Failed to remove file")); }