rbutil: Cleanly handle translation loading errors at runtime

Change-Id: I2d8c566437b9a6224db41608bf3cbab8aed76763
This commit is contained in:
Solomon Peachy 2026-06-27 07:28:10 -04:00
parent a700dcdfb0
commit 4875f706c2

View file

@ -581,7 +581,10 @@ QString Config::languageName(const QString &qmFile)
QString file = "rbutil_" + qmFile;
if(!translator.load(file, programPath))
translator.load(file, ":/lang");
if (!translator.load(file, ":/lang")) {
LOG_ERROR() << "Failed to load translation:" << file;
return ("Failed to load translation:" + file);
}
return translator.translate("Configure", "English",
"This is the localized language name, i.e. your language.");
@ -608,10 +611,16 @@ void Config::updateLanguage()
QString absolutePath = QCoreApplication::instance()->applicationDirPath();
if(!translator->load("rbutil_" + language, absolutePath))
translator->load("rbutil_" + language, ":/lang");
if (!translator->load("rbutil_" + language, ":/lang")) {
LOG_ERROR() << "Failed to load translation:" << ("rbutil_" + language);
return;
}
if(!qttrans->load("qt_" + language,
QLibraryInfo::path(QLibraryInfo::TranslationsPath)))
qttrans->load("qt_" + language, ":/lang");
if (!qttrans->load("qt_" + language, ":/lang")) {
LOG_ERROR() << "Failed to load translation:" << ("qt_" + language);
return;
}
qApp->installTranslator(translator);
qApp->installTranslator(qttrans);