Decompile 2 functions in Source/Utility/Text/LanguageCharset.cpp

Batch #12311 by cremane: 0 byte-identical, 2 confirmed by peer review.

- fn_17771 LanguageCharset: logic confirmed by peer review
- fn_17773 LanguageCodePage: logic confirmed by peer review (already on main)

Peer-reviewed-by: Yommy, Tanke, Toshiro
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
ragnarok-clanker 2026-11-05 14:30:51 +00:00
commit 8a929dccca

View file

@ -6,21 +6,37 @@
// FUNCTION: fn_17771
unsigned LanguageCharset(std::uint16_t language) {
switch (PRIMARYLANGID(language)) {
case LANG_JAPANESE:
return SHIFTJIS_CHARSET;
case LANG_KOREAN:
return HANGUL_CHARSET;
case LANG_CHINESE:
switch (SUBLANGID(language)) {
case SUBLANG_CHINESE_TRADITIONAL:
return CHINESEBIG5_CHARSET;
case SUBLANG_CHINESE_SIMPLIFIED:
return GB2312_CHARSET;
}
return GREEK_CHARSET;
case LANG_GREEK:
return GREEK_CHARSET;
case LANG_TURKISH:
return TURKISH_CHARSET;
case LANG_HEBREW:
return HEBREW_CHARSET;
case LANG_ARABIC:
return ARABIC_CHARSET;
case LANG_ESTONIAN:
case LANG_LATVIAN:
case LANG_LITHUANIAN:
return BALTIC_CHARSET;
case LANG_BULGARIAN:
case LANG_RUSSIAN:
case LANG_UKRAINIAN:
case LANG_BELARUSIAN:
return RUSSIAN_CHARSET;
case LANG_CHINESE:
if (SUBLANGID(language) == SUBLANG_CHINESE_TRADITIONAL) {
return CHINESEBIG5_CHARSET;
}
if (SUBLANGID(language) == SUBLANG_CHINESE_SIMPLIFIED) {
return GB2312_CHARSET;
}
return GREEK_CHARSET;
case LANG_THAI:
return THAI_CHARSET;
case LANG_CZECH:
case LANG_HUNGARIAN:
case LANG_POLISH:
@ -30,22 +46,6 @@ unsigned LanguageCharset(std::uint16_t language) {
case LANG_SLOVENIAN:
case LANG_MACEDONIAN:
return EASTEUROPE_CHARSET;
case LANG_GREEK:
return GREEK_CHARSET;
case LANG_HEBREW:
return HEBREW_CHARSET;
case LANG_JAPANESE:
return SHIFTJIS_CHARSET;
case LANG_KOREAN:
return HANGUL_CHARSET;
case LANG_THAI:
return THAI_CHARSET;
case LANG_TURKISH:
return TURKISH_CHARSET;
case LANG_ESTONIAN:
case LANG_LATVIAN:
case LANG_LITHUANIAN:
return BALTIC_CHARSET;
case LANG_VIETNAMESE:
return VIETNAMESE_CHARSET;
default: