OSDN Git Service

minor QSystemLocale::query() optimization
authorIvailo Monev <xakepa10@gmail.com>
Mon, 26 Oct 2020 15:03:37 +0000 (17:03 +0200)
committerIvailo Monev <xakepa10@gmail.com>
Mon, 26 Oct 2020 15:05:54 +0000 (17:05 +0200)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
src/core/tools/qlocale_unix.cpp

index 73cb056..0cdfd51 100644 (file)
@@ -176,11 +176,11 @@ QVariant QSystemLocale::query(QueryType type, QVariant in) const
         return QString();
     }
     case MeasurementSystem: {
-        const QString meas_locale = QString::fromLatin1(d->lc_measurement_var.constData(), d->lc_measurement_var.size());
-        if (meas_locale.compare(QLatin1String("Metric"), Qt::CaseInsensitive) == 0)
-            return QLocale::MetricSystem;
-        if (meas_locale.compare(QLatin1String("Other"), Qt::CaseInsensitive) == 0)
+        if (qstrnicmp("Metric", d->lc_measurement_var.constData(), d->lc_measurement_var.size()) == 0
+            || qstrnicmp("Other", d->lc_measurement_var.constData(), d->lc_measurement_var.size()) == 0) {
             return QLocale::MetricSystem;
+        }
+        const QString meas_locale = QString::fromLatin1(d->lc_measurement_var.constData(), d->lc_measurement_var.size());
         return QVariant((int)QLocale(meas_locale).measurementSystem());
     }
     case UILanguages: {