diff options
author | Zach Hilman <zachhilman@gmail.com> | 2018-08-10 03:06:44 +0200 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2018-08-10 03:06:59 +0200 |
commit | ec3bef7b4c21931918f3a84ad79a53d31b02aeaf (patch) | |
tree | e9da97be14d9474910faa1cfde851aa5b2383bc0 /src/core/loader/xci.cpp | |
parent | Merge pull request #995 from bunnei/gl-buff-bounds (diff) | |
download | yuzu-ec3bef7b4c21931918f3a84ad79a53d31b02aeaf.tar yuzu-ec3bef7b4c21931918f3a84ad79a53d31b02aeaf.tar.gz yuzu-ec3bef7b4c21931918f3a84ad79a53d31b02aeaf.tar.bz2 yuzu-ec3bef7b4c21931918f3a84ad79a53d31b02aeaf.tar.lz yuzu-ec3bef7b4c21931918f3a84ad79a53d31b02aeaf.tar.xz yuzu-ec3bef7b4c21931918f3a84ad79a53d31b02aeaf.tar.zst yuzu-ec3bef7b4c21931918f3a84ad79a53d31b02aeaf.zip |
Diffstat (limited to 'src/core/loader/xci.cpp')
-rw-r--r-- | src/core/loader/xci.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/core/loader/xci.cpp b/src/core/loader/xci.cpp index d3fe24419..5d67fb186 100644 --- a/src/core/loader/xci.cpp +++ b/src/core/loader/xci.cpp @@ -66,10 +66,13 @@ ResultStatus AppLoader_XCI::Load(Kernel::SharedPtr<Kernel::Process>& process) { return ResultStatus::ErrorAlreadyLoaded; } + if (xci->GetStatus() != ResultStatus::Success) + return xci->GetStatus(); + if (xci->GetNCAFileByType(FileSys::NCAContentType::Program) == nullptr) { if (!Core::Crypto::KeyManager::KeyFileExists(false)) - return ResultStatus::ErrorMissingKeys; - return ResultStatus::ErrorDecrypting; + return ResultStatus::ErrorMissingProductionKeyFile; + return ResultStatus::ErrorXCIMissingProgramNCA; } auto result = nca_loader->Load(process); @@ -91,14 +94,14 @@ ResultStatus AppLoader_XCI::ReadProgramId(u64& out_program_id) { ResultStatus AppLoader_XCI::ReadIcon(std::vector<u8>& buffer) { if (icon_file == nullptr) - return ResultStatus::ErrorInvalidFormat; + return ResultStatus::ErrorNoControl; buffer = icon_file->ReadAllBytes(); return ResultStatus::Success; } ResultStatus AppLoader_XCI::ReadTitle(std::string& title) { if (nacp_file == nullptr) - return ResultStatus::ErrorInvalidFormat; + return ResultStatus::ErrorNoControl; title = nacp_file->GetApplicationName(); return ResultStatus::Success; } |