From 8194b53166f8bd2852b9d183b4f549a0ed292f5e Mon Sep 17 00:00:00 2001 From: "Admiral H. Curtiss" Date: Sat, 9 Dec 2023 15:45:29 +0100 Subject: [PATCH] HW/CEXIIPL: Check for errors when reading font. --- Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp b/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp index 83700fa0d7..9209cccbf4 100644 --- a/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp +++ b/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp @@ -240,8 +240,11 @@ void CEXIIPL::LoadFontFile(const std::string& filename, u32 offset) INFO_LOG_FMT(BOOT, "Found IPL dump, loading {} font from {}", (offset == 0x1aff00) ? "Shift JIS" : "Windows-1252", ipl_rom_path); - stream.Seek(offset, File::SeekOrigin::Begin); - stream.ReadBytes(&m_rom[offset], fontsize); + if (!stream.Seek(offset, File::SeekOrigin::Begin) || !stream.ReadBytes(&m_rom[offset], fontsize)) + { + WARN_LOG_FMT(BOOT, "Failed to read font from IPL dump."); + return; + } m_fonts_loaded = true; }