From 5a6d90900ec2dcf8ebec4182c29019ca5537c89f Mon Sep 17 00:00:00 2001 From: JosJuice Date: Thu, 2 Nov 2017 17:05:45 +0100 Subject: Add WiiSaveBanner class This class is similar to the BannerLoaderWii class that was removed in ee694e32. --- Source/Core/DiscIO/VolumeWad.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Source/Core/DiscIO/VolumeWad.cpp') diff --git a/Source/Core/DiscIO/VolumeWad.cpp b/Source/Core/DiscIO/VolumeWad.cpp index 4b45f0b706..d09baf1f6a 100644 --- a/Source/Core/DiscIO/VolumeWad.cpp +++ b/Source/Core/DiscIO/VolumeWad.cpp @@ -22,6 +22,7 @@ #include "DiscIO/Enums.h" #include "DiscIO/Volume.h" #include "DiscIO/VolumeWad.h" +#include "DiscIO/WiiSaveBanner.h" namespace DiscIO { @@ -152,7 +153,7 @@ std::vector VolumeWAD::GetBanner(int* width, int* height) const if (!title_id) return std::vector(); - return GetWiiBanner(width, height, *title_id); + return WiiSaveBanner(*title_id).GetBanner(width, height); } BlobType VolumeWAD::GetBlobType() const -- cgit v1.2.3 From 1dc2a85ccc2e3a23b9cd33d1503038223bfae320 Mon Sep 17 00:00:00 2001 From: JosJuice Date: Thu, 2 Nov 2017 21:05:37 +0100 Subject: Avoid UB when reading Wii volume names --- Source/Core/DiscIO/VolumeWad.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Source/Core/DiscIO/VolumeWad.cpp') diff --git a/Source/Core/DiscIO/VolumeWad.cpp b/Source/Core/DiscIO/VolumeWad.cpp index d09baf1f6a..2d98986f81 100644 --- a/Source/Core/DiscIO/VolumeWad.cpp +++ b/Source/Core/DiscIO/VolumeWad.cpp @@ -138,10 +138,10 @@ std::map VolumeWAD::GetLongNames() const if (!m_tmd.IsValid() || !IOS::ES::IsChannel(m_tmd.GetTitleId())) return {}; - std::vector name_data(NAMES_TOTAL_BYTES); - if (!Read(m_opening_bnr_offset + 0x9C, NAMES_TOTAL_BYTES, name_data.data())) + std::vector names(NAMES_TOTAL_CHARS); + if (!Read(m_opening_bnr_offset + 0x9C, NAMES_TOTAL_BYTES, reinterpret_cast(names.data()))) return std::map(); - return ReadWiiNames(name_data); + return ReadWiiNames(names); } std::vector VolumeWAD::GetBanner(int* width, int* height) const -- cgit v1.2.3