summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2015-04-24 22:08:15 +0200
committerJosJuice <josjuice@gmail.com>2015-04-24 22:08:15 +0200
commit2e10a71dcdcbd72434ecdfb7424a482c38b111de (patch)
treebd0322c2231063ae1be75b788959f2a3b983356b /Source
parent87a63713f4f7c583545f23b75ed8395913c8e600 (diff)
Fix extracting files from Wii discs
I broke it for individual files but not folders in 4.0-6016.
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/DolphinWX/ISOProperties.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/Source/Core/DolphinWX/ISOProperties.cpp b/Source/Core/DolphinWX/ISOProperties.cpp
index 4d08a5b008..f2ef327c10 100644
--- a/Source/Core/DolphinWX/ISOProperties.cpp
+++ b/Source/Core/DolphinWX/ISOProperties.cpp
@@ -755,7 +755,10 @@ void CISOProperties::OnExtractFile(wxCommandEvent& WXUNUSED (event))
if (OpenISO->IsWiiDisc())
{
- WiiPartition* partition = reinterpret_cast<WiiPartition*>(m_Treectrl->GetItemData(m_Treectrl->GetSelection()));
+ const wxTreeItemId tree_selection = m_Treectrl->GetSelection();
+ WiiPartition* partition = reinterpret_cast<WiiPartition*>(m_Treectrl->GetItemData(tree_selection));
+ File.erase(0, m_Treectrl->GetItemText(tree_selection).length() + 1); // Remove "Partition x/"
+
partition->FileSystem->ExportFile(WxStrToStr(File), WxStrToStr(Path));
}
else
@@ -897,8 +900,10 @@ void CISOProperties::OnExtractDir(wxCommandEvent& event)
if (OpenISO->IsWiiDisc())
{
- WiiPartition* partition = reinterpret_cast<WiiPartition*>(m_Treectrl->GetItemData(m_Treectrl->GetSelection()));
- Directory.erase(0, m_Treectrl->GetItemText(m_Treectrl->GetSelection()).length() + 1); // Remove "Partition x/"
+ const wxTreeItemId tree_selection = m_Treectrl->GetSelection();
+ WiiPartition* partition = reinterpret_cast<WiiPartition*>(m_Treectrl->GetItemData(tree_selection));
+ Directory.erase(0, m_Treectrl->GetItemText(tree_selection).length() + 1); // Remove "Partition x/"
+
ExportDir(WxStrToStr(Directory), WxStrToStr(Path), partition);
}
else