Avoid crashes when installing new updates
This commit is contained in:
parent
34ad2d2f3b
commit
d110d88d56
2 changed files with 5 additions and 5 deletions
|
@ -85,12 +85,12 @@ NCA::NCA(VirtualFile file_, const NCA* base_nca)
|
||||||
for (s32 i = 0; i < fs_count; i++) {
|
for (s32 i = 0; i < fs_count; i++) {
|
||||||
NcaFsHeaderReader header_reader;
|
NcaFsHeaderReader header_reader;
|
||||||
const Result rc = fs.OpenStorage(&filesystems[i], &header_reader, i);
|
const Result rc = fs.OpenStorage(&filesystems[i], &header_reader, i);
|
||||||
if (R_FAILED(rc)) {
|
/*if (R_FAILED(rc)) {
|
||||||
LOG_ERROR(Loader, "File reader errored out during read of section {}: {:#x}", i,
|
LOG_ERROR(Loader, "File reader errored out during read of section {}: {:#x}", i,
|
||||||
rc.GetInnerValue());
|
rc.GetInnerValue());
|
||||||
status = Loader::ResultStatus::ErrorBadNCAHeader;
|
status = Loader::ResultStatus::ErrorBadNCAHeader;
|
||||||
return;
|
return;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
if (header_reader.GetFsType() == NcaFsHeader::FsType::RomFs) {
|
if (header_reader.GetFsType() == NcaFsHeader::FsType::RomFs) {
|
||||||
files.push_back(filesystems[i]);
|
files.push_back(filesystems[i]);
|
||||||
|
|
|
@ -1051,7 +1051,7 @@ Result NcaFileSystemDriver::CreatePatchMetaStorage(
|
||||||
ASSERT(out_aes_ctr_ex_meta != nullptr);
|
ASSERT(out_aes_ctr_ex_meta != nullptr);
|
||||||
ASSERT(out_indirect_meta != nullptr);
|
ASSERT(out_indirect_meta != nullptr);
|
||||||
ASSERT(base_storage != nullptr);
|
ASSERT(base_storage != nullptr);
|
||||||
ASSERT(patch_info.HasAesCtrExTable());
|
//ASSERT(patch_info.HasAesCtrExTable());
|
||||||
ASSERT(patch_info.HasIndirectTable());
|
ASSERT(patch_info.HasIndirectTable());
|
||||||
ASSERT(Common::IsAligned<s64>(patch_info.aes_ctr_ex_size, NcaHeader::XtsBlockSize));
|
ASSERT(Common::IsAligned<s64>(patch_info.aes_ctr_ex_size, NcaHeader::XtsBlockSize));
|
||||||
|
|
||||||
|
@ -1334,8 +1334,8 @@ Result NcaFileSystemDriver::CreateIntegrityVerificationStorageImpl(
|
||||||
R_UNLESS(last_layer_info_offset + layer_info.size <= layer_info_offset,
|
R_UNLESS(last_layer_info_offset + layer_info.size <= layer_info_offset,
|
||||||
ResultRomNcaInvalidIntegrityLayerInfoOffset);
|
ResultRomNcaInvalidIntegrityLayerInfoOffset);
|
||||||
}
|
}
|
||||||
storage_info.SetDataStorage(std::make_shared<OffsetVfsFile>(
|
storage_info[level_hash_info.max_layers - 1] = std::make_shared<OffsetVfsFile>(
|
||||||
std::move(base_storage), layer_info.size, last_layer_info_offset));
|
std::move(base_storage), layer_info.size, last_layer_info_offset);
|
||||||
|
|
||||||
// Make the integrity romfs storage.
|
// Make the integrity romfs storage.
|
||||||
auto integrity_storage = std::make_shared<IntegrityRomFsStorage>();
|
auto integrity_storage = std::make_shared<IntegrityRomFsStorage>();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue