Browse Source

AM: fix GetDesiredLanguage:

try to get a control metadata from application update when is failed to get from the basic version.

Tested on Kirby Star Allies
nce_cpp
CrazyMax 6 years ago
parent
commit
3f446eb9c2
  1. 14
      src/core/hle/service/am/am.cpp

14
src/core/hle/service/am/am.cpp

@ -1389,7 +1389,19 @@ void IApplicationFunctions::GetDesiredLanguage(Kernel::HLERequestContext& ctx) {
u32 supported_languages = 0;
FileSys::PatchManager pm{system.CurrentProcess()->GetTitleID()};
const auto res = pm.GetControlMetadata();
const auto res = [this] {
const auto title_id = system.CurrentProcess()->GetTitleID();
FileSys::PatchManager pm{title_id};
auto res = pm.GetControlMetadata();
if (res.first != nullptr) {
return res;
}
FileSys::PatchManager pm_update{FileSys::GetUpdateTitleID(title_id)};
return pm_update.GetControlMetadata();
}();
if (res.first != nullptr) {
supported_languages = res.first->GetSupportedLanguages();
}

Loading…
Cancel
Save