diff options
author | Zach Hilman <zachhilman@gmail.com> | 2019-06-25 01:05:50 +0200 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2019-06-25 01:05:50 +0200 |
commit | a468273221097462032991bad2cca1218c2364b2 (patch) | |
tree | 700e2744b63a859327283040f17a8d4b43ba0f04 | |
parent | Merge pull request #2603 from WamWooWam/master (diff) | |
download | yuzu-a468273221097462032991bad2cca1218c2364b2.tar yuzu-a468273221097462032991bad2cca1218c2364b2.tar.gz yuzu-a468273221097462032991bad2cca1218c2364b2.tar.bz2 yuzu-a468273221097462032991bad2cca1218c2364b2.tar.lz yuzu-a468273221097462032991bad2cca1218c2364b2.tar.xz yuzu-a468273221097462032991bad2cca1218c2364b2.tar.zst yuzu-a468273221097462032991bad2cca1218c2364b2.zip |
-rw-r--r-- | src/core/file_sys/patch_manager.cpp | 10 | ||||
-rw-r--r-- | src/core/file_sys/patch_manager.h | 6 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/core/file_sys/patch_manager.cpp b/src/core/file_sys/patch_manager.cpp index da823c37b..a8f80e2c6 100644 --- a/src/core/file_sys/patch_manager.cpp +++ b/src/core/file_sys/patch_manager.cpp @@ -493,6 +493,16 @@ std::map<std::string, std::string, std::less<>> PatchManager::GetPatchVersionNam return out; } +std::optional<u32> PatchManager::GetGameVersion() const { + const auto& installed = Core::System::GetInstance().GetContentProvider(); + const auto update_tid = GetUpdateTitleID(title_id); + if (installed.HasEntry(update_tid, ContentRecordType::Program)) { + return installed.GetEntryVersion(update_tid); + } + + return installed.GetEntryVersion(title_id); +} + std::pair<std::unique_ptr<NACP>, VirtualFile> PatchManager::GetControlMetadata() const { const auto& installed = Core::System::GetInstance().GetContentProvider(); diff --git a/src/core/file_sys/patch_manager.h b/src/core/file_sys/patch_manager.h index 769f8c6f0..f82b4ae1e 100644 --- a/src/core/file_sys/patch_manager.h +++ b/src/core/file_sys/patch_manager.h @@ -66,8 +66,10 @@ public: std::map<std::string, std::string, std::less<>> GetPatchVersionNames( VirtualFile update_raw = nullptr) const; - // Given title_id of the program, attempts to get the control data of the update and parse it, - // falling back to the base control data. + std::optional<u32> GetGameVersion() const; + + // Given title_id of the program, attempts to get the control data of the update and parse + // it, falling back to the base control data. std::pair<std::unique_ptr<NACP>, VirtualFile> GetControlMetadata() const; // Version of GetControlMetadata that takes an arbitrary NCA |