Merge pull request #4007 from B3n30/romfs_file

RomFS: add RomFSFile and RomFS::GetFile
This commit is contained in:
Weiyi Wang 2018-07-27 11:24:31 +03:00 committed by GitHub
commit 719bec84cd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 33 additions and 11 deletions

View file

@ -143,9 +143,9 @@ bool Module::LoadSharedFont() {
const char16_t* file_name[4] = {u"cbf_std.bcfnt.lz", u"cbf_zh-Hans-CN.bcfnt.lz",
u"cbf_ko-Hang-KR.bcfnt.lz", u"cbf_zh-Hant-TW.bcfnt.lz"};
const u8* font_file =
RomFS::GetFilePointer(romfs_buffer.data(), {file_name[font_region_code - 1]});
if (font_file == nullptr)
const RomFS::RomFSFile font_file =
RomFS::GetFile(romfs_buffer.data(), {file_name[font_region_code - 1]});
if (font_file.Data() == nullptr)
return false;
struct {
@ -159,7 +159,7 @@ bool Module::LoadSharedFont() {
shared_font_header.status = 2; // successfully loaded
shared_font_header.region = font_region_code;
shared_font_header.decompressed_size =
DecompressLZ11(font_file, shared_font_mem->GetPointer(0x80));
DecompressLZ11(font_file.Data(), shared_font_mem->GetPointer(0x80));
std::memcpy(shared_font_mem->GetPointer(), &shared_font_header, sizeof(shared_font_header));
*shared_font_mem->GetPointer(0x83) = 'U'; // Change the magic from "CFNT" to "CFNU"