diff --git a/aegisub/aegisublocale.cpp b/aegisub/aegisublocale.cpp index d76230b2d..4323c8da7 100644 --- a/aegisub/aegisublocale.cpp +++ b/aegisub/aegisublocale.cpp @@ -46,7 +46,7 @@ #include #include "aegisublocale.h" #include "standard_paths.h" - +#include /////////////// // Constructor @@ -150,6 +150,7 @@ wxArrayInt AegisubLocale::GetAvailableLanguages() { _T("fr_FR"), _T("hu"), _T("it"), + _T("ja"), _T("ko"), _T("ru"), _T("pt_BR"), @@ -159,9 +160,12 @@ wxArrayInt AegisubLocale::GetAvailableLanguages() { size_t len = sizeof(langs)/sizeof(wchar_t*); for (size_t i=0; iLanguage); - } + // If the locale file doesn't exist then don't list it as an option. + wxString locDir = wxStandardPaths::Get().GetLocalizedResourcesDir(langs[i], wxStandardPathsBase::ResourceCat_Messages); + wxFileName file(wxString::Format(_T("%s/%s.mo"), locDir.c_str(), _T(GETTEXT_PACKAGE))); + if (lang && file.FileExists()) final.Add(lang->Language); + } #endif return final;