From 57e166dbef1508ae69b858e1c051406074e9310b Mon Sep 17 00:00:00 2001 From: "Admiral H. Curtiss" Date: Sat, 9 Dec 2023 15:43:03 +0100 Subject: [PATCH] HW/CEXIIPL: Consider that the loaded file may not actually contain a nullterminated string. --- Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp b/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp index 197c0735d6..83700fa0d7 100644 --- a/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp +++ b/Source/Core/Core/HW/EXI/EXI_DeviceIPL.cpp @@ -111,8 +111,9 @@ CEXIIPL::CEXIIPL(Core::System& system) : IEXIDevice(system) { // Descramble the encrypted section (contains BS1 and BS2) Descrambler(&m_rom[0x100], 0x1afe00); - // yay for null-terminated strings - const std::string_view name{reinterpret_cast(m_rom.get())}; + + const std::string_view name{reinterpret_cast(m_rom.get()), + strnlen(reinterpret_cast(m_rom.get()), 0x100)}; INFO_LOG_FMT(BOOT, "Loaded bootrom: {}", name); } else