summaryrefslogtreecommitdiff
path: root/Source/Core/DiscIO/VolumeDirectory.cpp
diff options
context:
space:
mode:
authorcomex <comexk@gmail.com>2015-05-05 16:20:04 -0400
committercomex <comexk@gmail.com>2015-05-05 16:20:04 -0400
commit6414cdabb2ae7762f2d98427b9ff024af07bb959 (patch)
tree5362ae99777fc494d6c2b059b0bd63a6bb296b97 /Source/Core/DiscIO/VolumeDirectory.cpp
parent430e8b7adeb5b3adb12ef50ce7961562463b0fa0 (diff)
parentdf8e768b77b551832ace0d552ec10c1b062c55f3 (diff)
Merge pull request #2286 from JosJuice/wii-opening-bnr
Read opening.bnr to get names from Wii discs
Diffstat (limited to 'Source/Core/DiscIO/VolumeDirectory.cpp')
-rw-r--r--Source/Core/DiscIO/VolumeDirectory.cpp18
1 files changed, 15 insertions, 3 deletions
diff --git a/Source/Core/DiscIO/VolumeDirectory.cpp b/Source/Core/DiscIO/VolumeDirectory.cpp
index 6f3e4ccb7f..876848b2d3 100644
--- a/Source/Core/DiscIO/VolumeDirectory.cpp
+++ b/Source/Core/DiscIO/VolumeDirectory.cpp
@@ -8,7 +8,6 @@
#include <map>
#include <memory>
#include <string>
-#include <utility>
#include <vector>
#include "Common/CommonPaths.h"
@@ -183,9 +182,22 @@ std::string CVolumeDirectory::GetMakerID() const
return "VOID";
}
-std::vector<std::string> CVolumeDirectory::GetNames() const
+std::string CVolumeDirectory::GetName() const
{
- return std::vector<std::string>(1, (char*)(&m_diskHeader[0x20]));
+ char name[0x60];
+ if (Read(0x20, 0x60, (u8*)name, false))
+ return DecodeString(name);
+ else
+ return "";
+}
+
+std::map<IVolume::ELanguage, std::string> CVolumeDirectory::GetNames() const
+{
+ std::map<IVolume::ELanguage, std::string> names;
+ std::string name = GetName();
+ if (!name.empty())
+ names[IVolume::ELanguage::LANGUAGE_UNKNOWN] = name;
+ return names;
}
void CVolumeDirectory::SetName(const std::string& name)