diff options
| -rw-r--r-- | src/core/file_sys/control_metadata.cpp | 24 | ||||
| -rw-r--r-- | src/core/file_sys/control_metadata.h | 7 | 
2 files changed, 17 insertions, 14 deletions
| diff --git a/src/core/file_sys/control_metadata.cpp b/src/core/file_sys/control_metadata.cpp index e76bf77bf..f11b91399 100644 --- a/src/core/file_sys/control_metadata.cpp +++ b/src/core/file_sys/control_metadata.cpp @@ -8,6 +8,14 @@  namespace FileSys { +const std::array<const char*, 15> LANGUAGE_NAMES = { +    "AmericanEnglish", "BritishEnglish", "Japanese", +    "French",          "German",         "LatinAmericanSpanish", +    "Spanish",         "Italian",        "Dutch", +    "CanadianFrench",  "Portugese",      "Russian", +    "Korean",          "Taiwanese",      "Chinese", +}; +  std::string LanguageEntry::GetApplicationName() const {      return Common::StringFromFixedZeroTerminatedBuffer(application_name.data(), 0x200);  } @@ -23,15 +31,15 @@ NACP::NACP(VirtualFile file) : raw(std::make_unique<RawNACP>()) {  const LanguageEntry& NACP::GetLanguageEntry(Language language) const {      if (language != Language::Default) {          return raw->language_entries.at(static_cast<u8>(language)); -    } else { -        for (const auto& language_entry : raw->language_entries) { -            if (!language_entry.GetApplicationName().empty()) -                return language_entry; -        } - -        // Fallback to English -        return GetLanguageEntry(Language::AmericanEnglish);      } + +    for (const auto& language_entry : raw->language_entries) { +        if (!language_entry.GetApplicationName().empty()) +            return language_entry; +    } + +    // Fallback to English +    return GetLanguageEntry(Language::AmericanEnglish);  }  std::string NACP::GetApplicationName(Language language) const { diff --git a/src/core/file_sys/control_metadata.h b/src/core/file_sys/control_metadata.h index 8a510bf46..319bae821 100644 --- a/src/core/file_sys/control_metadata.h +++ b/src/core/file_sys/control_metadata.h @@ -66,12 +66,7 @@ enum class Language : u8 {      Default = 255,  }; -static constexpr std::array<const char*, 15> LANGUAGE_NAMES = { -    "AmericanEnglish", "BritishEnglish", "Japanese", -    "French",          "German",         "LatinAmericanSpanish", -    "Spanish",         "Italian",        "Dutch", -    "CanadianFrench",  "Portugese",      "Russian", -    "Korean",          "Taiwanese",      "Chinese"}; +extern const std::array<const char*, 15> LANGUAGE_NAMES;  // A class representing the format used by NX metadata files, typically named Control.nacp.  // These store application name, dev name, title id, and other miscellaneous data. | 
