summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArttu Tarkiainen <arttu.tarkiainen@qt.io>2022-12-01 15:36:19 +0200
committerArttu Tarkiainen <arttu.tarkiainen@qt.io>2022-12-08 11:10:42 +0200
commit7af2e1aadbee766eae334fe605dcf59af047bfe1 (patch)
tree90dc6b31e4c7848d6f71accd8a6f6f69f22eef09
parent8392eed80a132ce3ffdcd546438adb9b4ad267e9 (diff)
UpdateFinder: use static initialization for the list of UI languages
Callgrind shows almost fourth of the time parsing the update files was spent on calling the QLocale().uiLanguages() method again and again for each Updates.xml. Initialize tha languages list once instead. Change-Id: I1e2da48d2014d8de66f3c5ea773a1f479477264f Reviewed-by: Katja Marttila <katja.marttila@qt.io>
-rw-r--r--src/libs/kdtools/updatesinfo.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libs/kdtools/updatesinfo.cpp b/src/libs/kdtools/updatesinfo.cpp
index 43f75e8a7..339118d42 100644
--- a/src/libs/kdtools/updatesinfo.cpp
+++ b/src/libs/kdtools/updatesinfo.cpp
@@ -177,7 +177,8 @@ bool UpdatesInfoData::parsePackageUpdateElement(const QDomElement &updateE)
info.data.insert(QLatin1String("Script"), scriptHash);
QStringList candidates;
- foreach (const QString &lang, QLocale().uiLanguages())
+ static const QStringList uiLanguages = QLocale().uiLanguages();
+ foreach (const QString &lang, uiLanguages)
candidates << QInstaller::localeCandidates(lang.toLower());
foreach (const QString &candidate, candidates) {
if (localizedDescriptions.contains(candidate)) {